@charset "UTF-8";
.p-about {
  margin-top: 40px;
}

@media screen and (max-width: 767.9px) {
  .p-about {
    margin-top: 4%;
  }
}

.p-about__outline {
  margin-bottom: 80px;
}

@media screen and (max-width: 767.9px) {
  .p-about__outline {
    margin-bottom: 33px;
  }
}

.p-about__outline .c-box {
  padding-top: 4%;
  padding-bottom: 1.3%;
}

@media screen and (max-width: 767.9px) {
  .p-about__outline .c-box {
    padding-top: 5.8%;
    padding-bottom: 0.3%;
  }
}

.p-about__block {
  margin-bottom: 27px;
}

@media screen and (max-width: 767.9px) {
  .p-about__block {
    margin-bottom: 2px;
  }
}

.p-about__block:last-of-type {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .p-about__block-inner {
    padding: 0 20px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-about__block-ttl {
    margin-bottom: 2px;
  }
}

.p-about__block-row {
  position: relative;
  padding: 41px 0;
}

@media screen and (min-width: 768px) {
  .p-about__block-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (max-width: 767.9px) {
  .p-about__block-row {
    padding: 7% 0 8%;
  }
}

.p-about__block-row + .p-about__block-row {
  margin-top: 6px;
}

.p-about__block-row + .p-about__block-row::before {
  position: absolute;
  top: -6px;
  left: 0;
  background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
  width: 100%;
  height: 6px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-about__block-row + .p-about__block-row::before {
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
  }
}

@media screen and (max-width: 767.9px) {
  .p-about__block-row + .p-about__block-row::before {
    height: 3px;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-center {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-plr {
    padding-right: 4.3%;
    padding-left: 4.3%;
  }
}

.p-about__block-row.-column {
  display: block;
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-column {
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-row01::before {
    position: absolute;
    right: 0;
    bottom: 34px;
    background: url(../img/common/bg/bg_arrow.png) no-repeat 0 0;
    background-size: contain;
    width: 184px;
    height: 184px;
    content: '';
  }
}

.p-about__block-row.-row01 .p-about__block-img {
  margin-right: 49px;
  width: 39.5%;
}

@media screen and (max-width: 767.9px) {
  .p-about__block-row.-row01 .p-about__block-img {
    margin-right: auto;
    width: 55.8%;
  }
}

.p-about__block-row.-row02 .p-about__block-img {
  width: 23.2%;
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-row02 .p-about__block-img {
    margin: 0 46px 0 0;
  }
}

@media screen and (max-width: 767.9px) {
  .p-about__block-row.-row02 .p-about__block-img {
    width: 49.5%;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-row03 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

@media screen and (max-width: 767.9px) {
  .p-about__block-row.-row03 {
    padding-top: 6.5%;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-row03 .p-about__block-img {
    margin: 0 0 0 50px;
    width: 50%;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-row04 .p-about__block-img {
    margin-right: 40px;
    width: 50%;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-row05 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-row05::after {
    position: absolute;
    bottom: -10px;
    left: 19px;
    background: url(../img/common/bg/bg_flag.png) no-repeat 0 0;
    background-size: contain;
    width: 216px;
    height: 172px;
    content: '';
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-row05 .p-about__block-img {
    margin-left: 40px;
    width: 50%;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-row06 .p-about__block-img {
    margin-bottom: 27px;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-row.-row07 .p-about__block-img {
    margin-bottom: 27px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-about__block-row.-row07 .p-about__block-text {
    margin-top: 4.1%;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-img {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
}

@media screen and (max-width: 767.9px) {
  .p-about__block-img {
    margin: 0 auto;
    width: 98%;
  }
}

.p-about__block-img img {
  width: 100%;
}

.p-about__block-text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  font-size: 18.5px;
  font-weight: 700;
  line-height: 1.55;
}

@media screen and (max-width: 767.9px) {
  .p-about__block-text {
    margin-top: 5.1%;
    padding: 0 2.8%;
    font-size: 13.5px;
    line-height: 1.7;
  }
}

@media screen and (min-width: 768px) {
  .p-about__block-text.-mt {
    margin-top: 19px;
  }
}

.p-about__history-ttl {
  margin-bottom: 56px;
}

@media screen and (max-width: 767.9px) {
  .p-about__history-ttl {
    margin-bottom: 4%;
  }
}

.p-about__history-inner .c-box {
  position: relative;
  margin-bottom: 150px;
  padding-top: 87px;
  padding-bottom: 84px;
}

@media screen and (max-width: 767.9px) {
  .p-about__history-inner .c-box {
    margin-bottom: 40px;
    padding-top: 46px;
    padding-bottom: 57px;
  }
}

.p-about__history-inner .c-box::before {
  position: absolute;
  right: 0;
  bottom: 0;
  background: url(../img/common/bg/bg_rail.png) no-repeat 0 0;
  background-size: contain;
  width: 241px;
  height: 173px;
  content: '';
}

@media screen and (max-width: 767.9px) {
  .p-about__history-inner .c-box::before {
    background-position: bottom 0 right 0;
    width: 34.4%;
  }
}

.p-about__table {
  position: relative;
  padding: 0 20px;
}

@media screen and (max-width: 767.9px) {
  .p-about__table {
    padding: 0 1.8%;
  }
}

.p-about__table::before {
  position: absolute;
  top: -2px;
  bottom: -10px;
  left: 148px;
  background-image: repeating-linear-gradient(180deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
  width: 6px;
  content: '';
}

@media screen and (max-width: 767.9px) {
  .p-about__table::before {
    top: -3px;
    bottom: -16px;
    left: 62px;
    left: calc(57px + 1.8%);
    background-image: repeating-linear-gradient(180deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
    width: 3px;
  }
}

.p-about__table::after {
  position: absolute;
  top: -43px;
  left: 125px;
  background: url(../img/about/icon_history.png) no-repeat 50% 50%;
  background-size: contain;
  width: 49px;
  height: 30px;
  content: '';
}

@media screen and (max-width: 767.9px) {
  .p-about__table::after {
    top: -26px;
    left: calc(45px + 1.8%);
    width: 25px;
    height: 15px;
  }
}

.p-about__table-row {
  position: relative;
}

.p-about__table-row + .p-about__table-row {
  margin-top: 21px;
}

@media screen and (max-width: 767.9px) {
  .p-about__table-row + .p-about__table-row {
    margin-top: 13px;
  }
}

.p-about__table-year {
  position: absolute;
  top: 0;
  left: 0;
  width: 127px;
  color: #00579a;
  font-size: 25px;
  font-weight: 700;
}

@media screen and (max-width: 767.9px) {
  .p-about__table-year {
    width: 55px;
    font-size: 12px;
  }
}

.p-about__table-desc {
  padding: 3px 0 3px 175px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
}

@media screen and (max-width: 767.9px) {
  .p-about__table-desc {
    padding: 0px 0 3px 75px;
    font-size: 12.5px;
    letter-spacing: 0.03em;
    line-height: 1.3;
  }
}

.p-chara {
  margin: 65px 0 100px;
}

.p-chara img {
  pointer-events: none;
}

@media screen and (max-width: 767.9px) {
  .p-chara {
    margin: 4.1% 0 40px;
  }
  .p-chara__inner {
    padding: 0 calc((100% - 94.5%) / 2);
    width: 100%;
    max-width: 100%;
    overflow: hidden;
  }
}

.p-chara__thumb-wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.p-chara__thumb-item {
  position: relative;
  cursor: pointer;
  border: 3px solid #ffffff;
  border-radius: 8px;
  background-color: #5fbceb;
  width: 100%;
  max-width: calc((100% - (10px * 9)) / 10);
  overflow: hidden;
}

.p-chara__thumb-item:nth-child(n + 2) {
  margin-left: 10px;
}

.p-chara__thumb-item:nth-child(10n + 1) {
  margin-left: 0;
}

.p-chara__thumb-item:nth-child(n + 11) {
  margin-top: 9px;
}

.p-chara__thumb-item::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(0);
      -ms-transform: translate(-50%, -50%) scale(0);
          transform: translate(-50%, -50%) scale(0);
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  border-radius: 50rem;
  background-color: #ffd700;
  width: 140%;
  height: 140%;
  overflow: hidden;
  content: '';
}

.p-chara__thumb-item.is-current::before {
  -webkit-transform: translate(-50%, -50%) scale(1);
      -ms-transform: translate(-50%, -50%) scale(1);
          transform: translate(-50%, -50%) scale(1);
}

.p-chara__thumb-content {
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-chara__thumb-wrap {
    -webkit-transform: translate(0, 0) !important;
        -ms-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important;
  }
  .p-chara__thumb-item {
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  }
  .p-chara__thumb-item:hover {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
}

@media screen and (max-width: 767.9px) {
  .p-chara__thumb-wrap {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .p-chara__thumb-item {
    margin-top: 0;
    margin-left: 0;
    border: 2px solid #ffffff;
    border-radius: 5px;
    max-width: 100%;
  }
  .p-chara__thumb-item:nth-child(n + 2) {
    margin-left: 0;
  }
  .p-chara__thumb-item:nth-child(10n + 1) {
    margin-left: 0;
  }
  .p-chara__thumb-item:nth-child(n + 11) {
    margin-top: 0;
  }
}

.p-chara__wrap {
  position: relative;
  margin-top: 39px;
}

@media screen and (max-width: 767.9px) {
  .p-chara__wrap {
    margin-top: 15px;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    max-width: 100%;
  }
}

.p-chara__controll {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
  width: calc(100% + 11%);
  height: 100%;
  pointer-events: none;
}

.p-chara__controll-item {
  aspect-ratio: 1/1.04;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 4.9%;
}

.p-chara__controll-item.-prev {
  left: 0;
}

.p-chara__controll-item.-next {
  right: 0;
}

.p-chara__controll-btn {
  display: block;
  position: relative;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  cursor: pointer;
  background-color: #1b316c;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: all;
}

.p-chara__controll-btn::before {
  aspect-ratio: 1/1;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  border-radius: 50rem;
  background-color: #ffffff;
  width: 140%;
  overflow: hidden;
  content: '';
}

.p-chara__controll-btn::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 1;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  width: 24%;
  height: 24%;
  content: '';
}

.p-chara__controll-btn--prev {
  border-radius: 50rem 0 0 50rem;
}

.p-chara__controll-btn--prev::before {
  -webkit-transform: translate(calc(-50% + 0.5em), -50%) scale(0);
      -ms-transform: translate(calc(-50% + 0.5em), -50%) scale(0);
          transform: translate(calc(-50% + 0.5em), -50%) scale(0);
}

.p-chara__controll-btn--prev::after {
  -webkit-mask-image: url("../img/character/btn_icon-prev.png");
          mask-image: url("../img/character/btn_icon-prev.png");
}

@media screen and (min-width: 768px) {
  .p-chara__controll-btn--prev:hover::before {
    -webkit-transform: translate(calc(-50% + 0.5em), -50%) scale(1);
        -ms-transform: translate(calc(-50% + 0.5em), -50%) scale(1);
            transform: translate(calc(-50% + 0.5em), -50%) scale(1);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  }
  .p-chara__controll-btn--prev:hover::after {
    -webkit-transform: translate(-50%, -50%) scale(1.4);
        -ms-transform: translate(-50%, -50%) scale(1.4);
            transform: translate(-50%, -50%) scale(1.4);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0.1s;
    transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0.1s;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0.1s;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0.1s, -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0.1s;
    background-color: #1b316c;
  }
}

.p-chara__controll-btn--next {
  border-radius: 0 50rem 50rem 0;
}

.p-chara__controll-btn--next::before {
  -webkit-transform: translate(calc(-50% - 0.5em), -50%) scale(0);
      -ms-transform: translate(calc(-50% - 0.5em), -50%) scale(0);
          transform: translate(calc(-50% - 0.5em), -50%) scale(0);
}

.p-chara__controll-btn--next::after {
  -webkit-mask-image: url("../img/character/btn_icon-next.png");
          mask-image: url("../img/character/btn_icon-next.png");
}

@media screen and (min-width: 768px) {
  .p-chara__controll-btn--next:hover::before {
    -webkit-transform: translate(calc(-50% - 0.5em), -50%) scale(1);
        -ms-transform: translate(calc(-50% - 0.5em), -50%) scale(1);
            transform: translate(calc(-50% - 0.5em), -50%) scale(1);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  }
  .p-chara__controll-btn--next:hover::after {
    -webkit-transform: translate(-50%, -50%) scale(1.4);
        -ms-transform: translate(-50%, -50%) scale(1.4);
            transform: translate(-50%, -50%) scale(1.4);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0.1s;
    transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0.1s;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0.1s;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0.1s, -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0.1s;
    background-color: #1b316c;
  }
}

.p-chara__controll-btn.is-disabled {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
  pointer-events: none;
}

@media screen and (max-width: 767.9px) {
  .p-chara__controll {
    top: 0;
    max-width: 100vw;
    height: calc(100vw / 1.09);
  }
  .p-chara__controll-item {
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 9.7%;
  }
  .p-chara__controll-item.-prev {
    left: 0;
  }
  .p-chara__controll-item.-next {
    right: 0;
  }
  .p-chara__controll-btn--prev {
    border-radius: 0 50rem 50rem 0;
  }
  .p-chara__controll-btn--next {
    border-radius: 50rem 0 0 50rem;
  }
}

.p-chara__content {
  height: auto !important;
}

.p-chara__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #1ca7e2;
  pointer-events: none;
}

.p-chara__item-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 39px 40px 0 40.7px;
  width: 100%;
  max-width: 100%;
}

.p-chara__item-head::before {
  display: block;
  position: absolute;
  bottom: 29px;
  left: 29px;
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: contain;
  width: 45%;
  height: 35%;
  content: '';
}

.p-chara__item-body {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background-color: #5fbceb;
  width: 100%;
  max-width: 56.4%;
  overflow: hidden;
}

@media screen and (max-width: 767.9px) {
  .p-chara__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .p-chara__item-head {
    padding: 26px 20px 64px 18px;
    max-width: 100%;
  }
  .p-chara__item-head::before {
    right: 15px;
    bottom: 15px;
    left: auto;
    background-position: right bottom;
    width: 48%;
    height: 46%;
  }
  .p-chara__item-body {
    max-width: 100%;
  }
}

.p-chara__item.is-bg_01 .p-chara__item-head::before {
  background-image: url("../img/character/bg_mark_1.png");
}

.p-chara__item.is-bg_02 .p-chara__item-head::before {
  background-image: url("../img/character/bg_mark_2.png");
}

.p-chara__item.is-bg_03 .p-chara__item-head::before {
  background-image: url("../img/character/bg_mark_3.png");
}

.p-chara__item.is-active {
  pointer-events: all;
}

.p-chara__title {
  position: relative;
  padding-bottom: 33px;
}

.p-chara__title::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: -1px;
  background-image: url("../img/character/line_dot.png");
  background-position: left;
  background-repeat: repeat;
  width: calc(100% + 1.5px);
  height: 5px;
  content: '';
}

.p-chara__title-sub {
  color: #ffd700;
  font-size: 17.5px;
  font-weight: 900;
  letter-spacing: 0.05em;
  line-height: 1;
}

.p-chara__title-main {
  margin-top: 5px;
  margin-left: -0.15em;
  font-size: 40px;
  font-weight: 900;
  letter-spacing: -0.009em;
}

@media screen and (max-width: 767.9px) {
  .p-chara__title {
    padding-bottom: 23px;
  }
  .p-chara__title::before {
    left: 0;
    background-size: 9px 3px;
    width: 100%;
    height: 3px;
  }
  .p-chara__title-sub {
    margin-left: 0.1em;
    font-size: 13px;
  }
  .p-chara__title-main {
    margin-top: 0.1em;
    font-size: 30px;
  }
}

.p-chara__detail {
  margin-top: 23px;
}

.p-chara__detail-text {
  font-size: 17.5px;
  font-weight: 600;
  letter-spacing: 0.055em;
  line-height: 1.7;
}

@media screen and (max-width: 767.9px) {
  .p-chara__detail {
    margin-top: 18px;
  }
  .p-chara__detail-text {
    margin-left: 0.1em;
    font-size: 14px;
    letter-spacing: 0.035em;
  }
}

.p-chara__category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  margin-top: 46px;
}

.p-chara__category-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 50rem;
  background-color: #008c46;
  padding: 2px 35px 1px;
  min-width: 120px;
  min-width: 7.5rem;
  min-height: 31px;
  overflow: hidden;
}

.p-chara__category-label::before, .p-chara__category-label::after {
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url("../img/character/img_deco-screw.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 11px;
  height: 11px;
  content: '';
}

.p-chara__category-label::before {
  left: 13px;
}

.p-chara__category-label::after {
  right: 13px;
}

.p-chara__category-label-inner {
  font-size: 16px;
  letter-spacing: 0.05em;
}

.p-chara__category-category {
  margin-left: 15px;
  width: 100%;
  max-width: 100%;
}

@media screen and (max-width: 767.9px) {
  .p-chara__category {
    margin-top: 18px;
  }
  .p-chara__category-label {
    margin-left: 0.15em;
    padding: 1px 25px 1px;
    min-width: 5.6rem;
    min-height: 24px;
  }
  .p-chara__category-label::before, .p-chara__category-label::after {
    width: 9px;
    height: 9px;
  }
  .p-chara__category-label::before {
    left: 9px;
  }
  .p-chara__category-label::after {
    right: 9px;
  }
  .p-chara__category-label-inner {
    font-size: 13px;
  }
  .p-chara__category-category {
    margin-left: 11px;
    font-size: 13px;
    letter-spacing: -0.05em;
  }
}

.p-chara__list {
  display: none;
}

@media screen and (max-width: 767.9px) {
  .p-chara__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 30px;
  }
  .p-chara__list-item {
    position: relative;
    cursor: pointer;
    border: 2px solid #ffffff;
    border-radius: 4px;
    background-color: #5fbceb;
    width: 100%;
    max-width: calc((100% - (10px * 3)) / 4);
    overflow: hidden;
  }
  .p-chara__list-item:nth-child(n + 2) {
    margin-left: 10px;
  }
  .p-chara__list-item:nth-child(4n + 1) {
    margin-left: 0;
  }
  .p-chara__list-item:nth-child(n + 5) {
    margin-top: 6px;
  }
  .p-chara__list-item::before {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) scale(0);
        -ms-transform: translate(-50%, -50%) scale(0);
            transform: translate(-50%, -50%) scale(0);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    border-radius: 50rem;
    background-color: #ffd700;
    width: 140%;
    height: 140%;
    overflow: hidden;
    content: '';
  }
  .p-chara__list-item.is-current::before {
    -webkit-transform: translate(-50%, -50%) scale(1);
        -ms-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
  }
  .p-chara__list-content {
    position: relative;
    overflow: hidden;
  }
}

.p-chara__bnr {
  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-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 50px;
}

.p-chara__bnr-item {
  display: block;
  border: 5px solid #ffffff;
  background-color: #ffffff;
  width: 100%;
  max-width: 698px;
}

@media screen and (min-width: 768px) {
  .p-chara__bnr-item:hover .p-chara__bnr-content {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=65)";
    opacity: 0.65;
  }
}

.p-chara__bnr-content {
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

@media screen and (max-width: 767.9px) {
  .p-chara__bnr-item {
    max-width: 100%;
  }
}

body .p-chara__item .p-chara__visual {
  -webkit-transform: translateY(30px);
      -ms-transform: translateY(30px);
          transform: translateY(30px);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
}

body .p-chara__item .p-chara__title::before {
  -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
          clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}

body .p-chara__item .p-chara__title-main {
  -webkit-transform: translateX(-10px);
      -ms-transform: translateX(-10px);
          transform: translateX(-10px);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
}

body .p-chara__item .p-chara__title-sub {
  -webkit-transform: translateX(-10px);
      -ms-transform: translateX(-10px);
          transform: translateX(-10px);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
}

body .p-chara__item .p-chara__detail-text {
  -webkit-transform: translateY(10px);
      -ms-transform: translateY(10px);
          transform: translateY(10px);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
}

body .p-chara__item .p-chara__category {
  -webkit-transform: translateY(10px);
      -ms-transform: translateY(10px);
          transform: translateY(10px);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
}

body .p-chara__item .p-chara__item-head::before {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
}

body.is-load .p-chara__item {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
  -webkit-transition: opacity 0.4s !important;
  transition: opacity 0.4s !important;
}

body.is-load .p-chara__item.is-active {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  -webkit-transition: opacity 0.4s !important;
  transition: opacity 0.4s !important;
}

body.is-load .p-chara__item.is-active .p-chara__visual {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  transition: opacity 0.3s, -webkit-transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  transition: opacity 0.3s, transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  transition: opacity 0.3s, transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), -webkit-transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

body.is-load .p-chara__item.is-active .p-chara__title::before {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  -webkit-transition: opacity 0.3s, -webkit-clip-path 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  transition: opacity 0.3s, -webkit-clip-path 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  transition: opacity 0.3s, clip-path 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  transition: opacity 0.3s, clip-path 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), -webkit-clip-path 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

body.is-load .p-chara__item.is-active .p-chara__title-main {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  -webkit-transition: opacity 0.4s 0.3s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.3s;
  transition: opacity 0.4s 0.3s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.3s;
  transition: opacity 0.4s 0.3s, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.3s;
  transition: opacity 0.4s 0.3s, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.3s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.3s;
}

body.is-load .p-chara__item.is-active .p-chara__title-sub {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  -webkit-transition: opacity 0.4s 0.2s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.2s;
  transition: opacity 0.4s 0.2s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.2s;
  transition: opacity 0.4s 0.2s, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.2s;
  transition: opacity 0.4s 0.2s, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.2s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.2s;
}

body.is-load .p-chara__item.is-active .p-chara__detail-text {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  -webkit-transition: opacity 0.4s 0.4s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.4s;
  transition: opacity 0.4s 0.4s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.4s;
  transition: opacity 0.4s 0.4s, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.4s;
  transition: opacity 0.4s 0.4s, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.4s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.4s;
}

body.is-load .p-chara__item.is-active .p-chara__category {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  -webkit-transition: opacity 0.4s 0.5s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.5s;
  transition: opacity 0.4s 0.5s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.5s;
  transition: opacity 0.4s 0.5s, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.5s;
  transition: opacity 0.4s 0.5s, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.5s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.5s;
}

body.is-load .p-chara__item.is-active .p-chara__item-head::before {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  -webkit-transition: opacity 0.2s 0.2s, -webkit-transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) 0.2s;
  transition: opacity 0.2s 0.2s, -webkit-transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) 0.2s;
  transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) 0.2s, opacity 0.2s 0.2s;
  transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) 0.2s, opacity 0.2s 0.2s, -webkit-transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) 0.2s;
}

.p-tv {
  position: relative;
  margin-top: 40px;
}

@media screen and (max-width: 767.9px) {
  .p-tv {
    margin-top: 4%;
  }
}

.p-tv__block.-block02 {
  margin-top: 104px;
}

@media screen and (max-width: 767.9px) {
  .p-tv__block.-block02 {
    margin-top: 9%;
  }
}

.p-tv__block-ttl {
  margin-bottom: 66px;
}

@media screen and (max-width: 767.9px) {
  .p-tv__block-ttl {
    margin-bottom: 5%;
  }
}

.p-tv__onair-block {
  position: relative;
  margin-bottom: 40px;
  padding-top: 4.7%;
  padding-bottom: 4.7%;
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-block {
    margin-bottom: 3.6%;
    padding: 3.8% 8.5% 8.3%;
  }
}

.p-tv__onair-block::before {
  position: absolute;
  content: '';
}

@media screen and (min-width: 768px) {
  .p-tv__onair-block.-block01::before {
    top: 13px;
    right: 15px;
    background: url(../img/common/bg/bg_r.png) no-repeat 0 0;
    background-size: contain;
    width: 148px;
    height: 148px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-block.-block01 .p-tv__onair-desc {
    position: relative;
  }
  .p-tv__onair-block.-block01 .p-tv__onair-desc::before {
    position: absolute;
    top: 0;
    right: -2%;
    background: url(../img/common/bg/bg_r.png) no-repeat right 0 top 0;
    background-size: contain;
    padding-top: 25%;
    width: 25%;
    pointer-events: none;
    content: '';
  }
}

@media screen and (min-width: 768px) {
  .p-tv__onair-block.-block02::before {
    bottom: 32px;
    left: 5.2%;
    background: url(../img/common/bg/bg_heli.png) no-repeat 0 0;
    background-size: contain;
    width: 182px;
    height: 139px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-block.-block02 .p-tv__onair-ttl {
    padding: 5% 15% 9%;
    font-size: 15px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-block.-block02 .p-tv__onair-desc {
    position: relative;
  }
  .p-tv__onair-block.-block02 .p-tv__onair-desc::before {
    position: absolute;
    top: 0;
    right: -10px;
    margin-top: -2px;
    background: url(../img/common/bg/bg_heli.png) no-repeat right 0 top 0;
    background-size: contain;
    padding-top: 25%;
    width: 30%;
    pointer-events: none;
    content: '';
  }
}

.p-tv__onair-block.-block03::before {
  content: none;
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-block.-block03 .p-tv__onair-ttl {
    padding: 5% 15% 9%;
    font-size: 15px;
  }
}

@media screen and (min-width: 768px) {
  .p-tv__onair-block.-block03 .p-tv__onair-img::before {
    position: absolute;
    top: calc(100% + 42px);
    right: 3px;
    background: url(../img/common/bg/bg_bus.png) no-repeat 0 0;
    background-size: contain;
    width: 226px;
    height: 125px;
    content: '';
  }
}

.p-tv__onair-inner {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-tv__onair-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.p-tv__onair-img {
  position: relative;
  border: 4px solid #ffffff;
}

@media screen and (min-width: 768px) {
  .p-tv__onair-img {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 50%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-img {
    border-width: 2px;
  }
}

.p-tv__onair-img img {
  width: 100%;
}

.p-tv__onair-text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding-top: 24px;
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-text {
    padding-top: 15px;
  }
}

.p-tv__onair-ttl {
  margin-bottom: 18px;
  background: url(../img/tv/ttl_bg_1.png) no-repeat 0 0;
  background-size: contain;
  padding: 24px 86px 0 40px;
  width: 423px;
  height: 98px;
  color: #FFCD00;
  font-size: 26px;
  font-weight: 700;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.45);
}

@media screen and (min-width: 768px) {
  .p-tv__onair-ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-ttl {
    margin: 0 auto;
    margin-bottom: 4.5%;
    background: url(../img/common/title/ttl_bg_1.png) no-repeat 50% 50%;
    background-size: contain;
    padding: 4% 15% 8.5%;
    width: 93.5%;
    height: auto;
    font-size: 18px;
    text-align: center;
  }
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-ttl.is-pc {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .p-tv__onair-ttl.is-sp {
    display: none;
  }
}

.p-tv__onair-ttl.-long {
  padding: 27px 86px 0 33px;
  width: 450px;
  height: 104px;
}

.p-tv__onair-block:nth-of-type(1) .p-tv__onair-ttl {
  background-image: url(../img/tv/ttl_bg_1.png);
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-block:nth-of-type(1) .p-tv__onair-ttl {
    background-image: url(../img/common/title/ttl_bg_1.png);
  }
}

.p-tv__onair-block:nth-of-type(2) .p-tv__onair-ttl {
  background-image: url(../img/tv/ttl_bg_2.png);
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-block:nth-of-type(2) .p-tv__onair-ttl {
    background-image: url(../img/common/title/ttl_bg_2.png);
  }
}

.p-tv__onair-block:nth-of-type(3) .p-tv__onair-ttl {
  background-image: url(../img/tv/ttl_bg_3.png);
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-block:nth-of-type(3) .p-tv__onair-ttl {
    background-image: url(../img/common/title/ttl_bg_3.png);
  }
}

.p-tv__onair-wrap {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.58;
}

@media screen and (min-width: 768px) {
  .p-tv__onair-wrap {
    margin-right: 10%;
    padding-left: 9%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-wrap {
    font-size: 13px;
    line-height: 1.75;
  }
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-desc {
    padding: 0 4.2%;
  }
}

.p-tv__onair-desc .p-in-lead {
  margin-bottom: 31px;
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-desc .p-in-lead {
    margin-bottom: 13px;
  }
}

.p-tv__onair-desc .p-in-head {
  margin-bottom: 5px;
  color: #00579a;
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-desc .p-in-head {
    margin-bottom: 0;
    font-size: 1.05em;
  }
}

.p-tv__onair-block.-block03 .p-tv__onair-desc .p-in-head {
  margin-bottom: 0;
}

.p-tv__onair-desc .p-in-head.-head01, .p-tv__onair-desc .p-in-head.-head02 {
  font-size: 1.25em;
}

.p-tv__onair-desc .p-in-head.-head04 {
  margin-top: 22px;
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-desc .p-in-head.-head04 {
    margin-top: 11px;
  }
}

.p-tv__onair-desc strong {
  font-size: 24px;
  letter-spacing: 0.03em;
  line-height: 1.3;
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-desc strong {
    font-size: 20px;
    line-height: 1.45;
  }
}

.p-tv__onair-desc .p-in-bnr {
  margin-top: 23px;
  margin-bottom: 32px;
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-desc .p-in-bnr {
    margin: 4px auto 18px;
    width: 88%;
  }
}

.p-tv__onair-btn {
  margin: 34px 0 0 0;
  width: 330px;
}

@media screen and (max-width: 767.9px) {
  .p-tv__onair-btn {
    margin: 21px auto 0;
    width: 97%;
    max-width: 314px;
  }
}

.p-tv__btn-list-item {
  margin-bottom: 2.75%;
  border: 2px solid #d3d3d1;
  text-align: center;
}

.p-tv__btn-list-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 68px;
  font-weight: 800;
  line-height: 1.1;
}

.p-tv__btn-list-item.-unext .p-tv__btn-list-inner {
  background-color: #0081df;
}

.p-tv__btn-list-item.-animetimes .p-tv__btn-list-inner {
  background-color: #084ea4;
}

.p-tv__btn-list-item.-hulu .p-tv__btn-list-inner {
  background-color: #000000;
}

.-hulu .p-tv__btn-list-inner {
  color: #2fba27;
}

.p-tv__online {
  position: relative;
  margin-bottom: 140px;
  padding-top: 7.2%;
  padding-bottom: 5.1%;
}

@media screen and (max-width: 767.9px) {
  .p-tv__online {
    margin-bottom: 40px;
    padding: 31px 8.5% 34px;
  }
  .p-tv__online::before {
    position: absolute;
    right: 5.6%;
    bottom: 13px;
    background: url(../img/common/bg/bg_bus.png) no-repeat bottom 0 right 0;
    background-size: contain;
    padding-top: 17.6%;
    width: 31.6%;
    max-width: 164px;
    pointer-events: none;
  }
}

.p-tv__online-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.p-tv__online-list-item {
  border: 2px solid #d3d3d1;
  width: 31.5%;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-tv__online-list-item {
    margin-right: 2.75%;
    margin-bottom: 2.75%;
  }
  .p-tv__online-list-item:nth-of-type(3n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 767.9px) {
  .p-tv__online-list-item {
    border-width: 1px;
    width: 48%;
  }
  .p-tv__online-list-item:nth-of-type(even) {
    margin-left: 4%;
  }
  .p-tv__online-list-item:nth-of-type(n + 3) {
    margin-top: 4%;
  }
}

.p-tv__online-list-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 136px;
  font-size: 29px;
  font-weight: 800;
  line-height: 1.1;
}

@media screen and (max-width: 767.9px) {
  .p-tv__online-list-inner {
    height: 69px;
    font-size: 17px;
  }
}

.p-tv__online-list-item.-unext .p-tv__online-list-inner {
  background-color: #0081df;
}

.p-tv__online-list-item.-dtv .p-tv__online-list-inner {
  background-color: #cc0033;
}

.p-tv__online-list-item.-tsutaya .p-tv__online-list-inner {
  background-color: #143d8f;
}

.p-tv__online-list-item.-amazon .p-tv__online-list-inner {
  background-color: #0f171e;
}

.p-tv__online-list-item.-netflix .p-tv__online-list-inner {
  background-color: #e50914;
}

.p-tv__online-list-item.-hikari .p-tv__online-list-inner {
  background-color: #00a2e6;
}

.p-tv__online-list-item.-hulu .p-tv__online-list-inner {
  background-color: #000000;
}

.p-tv__online-list-item.-jcom .p-tv__online-list-inner {
  background-color: #ffffff;
}

.p-tv__online-list-item.-lemino .p-tv__online-list-inner {
  background-color: #ff0576;
}

.p-tv__online-list-item.-dmm .p-tv__online-list-inner {
  background-color: #000000;
}

.-tsutaya .p-tv__online-list-inner {
  color: #ffcb00;
}

.-hulu .p-tv__online-list-inner {
  color: #2fba27;
}

.-jcom .p-tv__online-list-inner {
  color: #e63311;
}

.p-paint {
  margin-top: 40px;
}

@media screen and (max-width: 767.9px) {
  .p-paint {
    margin-top: 4%;
  }
}

.p-paint__all {
  position: relative;
  margin: 65px 0 100px;
  padding-top: 6.55%;
  padding-bottom: 3.8%;
}

@media screen and (max-width: 767.9px) {
  .p-paint__all {
    margin: 4.4% 0 12%;
    padding-top: 5.4%;
    padding-bottom: 5.8%;
  }
}

@media screen and (min-width: 768px) {
  .p-paint__all::before {
    position: absolute;
    top: 0;
    right: 0;
    background: url(../img/common/bg/bg_flag.png) no-repeat 0 0;
    background-size: contain;
    width: 216px;
    height: 172px;
    content: "";
  }
}

.p-paint__cap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto 65px;
  background: url(../img/paint/bg_cap_nurie.png) no-repeat 50% 50%;
  background-size: contain;
  padding-left: 60px;
  width: 621px;
  height: 119px;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.01em;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.45);
}

@media screen and (max-width: 767.9px) {
  .p-paint__cap {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 auto 20px;
    padding: 16.5px 5%;
    width: 94%;
    height: auto;
    font-size: 14px;
    line-height: 1.4;
  }
}

.p-paint__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media screen and (max-width: 767.9px) {
  .p-paint__list {
    padding: 13px 2.2% 0;
  }
  .p-paint__list::before {
    position: absolute;
    top: 0;
    left: 0;
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
    width: 100%;
    height: 3px;
    content: "";
  }
}

@media screen and (max-width: 767.9px) and (max-width: 767.9px) {
  .p-paint__list::before {
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
  }
}

.p-paint__list-item {
  position: relative;
  margin-bottom: 3.6%;
  margin-left: 2.75%;
  padding-top: 47px;
  width: 31.5%;
}

@media screen and (min-width: 768px) {
  .p-paint__list-item:nth-of-type(3n + 1) {
    margin-left: 0;
  }
  .p-paint__list-item:nth-of-type(3n + 1)::before {
    position: absolute;
    top: 0;
    left: 0;
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
    width: 317.4%;
    height: 6px;
    content: "";
  }
}

@media screen and (min-width: 768px) and (max-width: 767.9px) {
  .p-paint__list-item:nth-of-type(3n + 1)::before {
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
  }
}

@media screen and (max-width: 767.9px) {
  .p-paint__list-item {
    margin: 0 0 9px 0;
    padding-top: 7%;
    width: 48%;
  }
  .p-paint__list-item:nth-of-type(even) {
    margin-left: 4%;
  }
}

.p-paint__list-img {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-paint__list-img::before {
    position: absolute;
    top: 0;
    left: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: 2px solid #d2d2d2;
    width: 100%;
    height: 100%;
    pointer-events: none;
    content: "";
  }
}

.p-paint__list-btn {
  margin: 13px auto 0;
  width: 94%;
}

@media screen and (min-width: 768px) {
  .p-paint__list-btn .c-btn::after {
    right: 30px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-paint__list-btn .c-btn::after {
    right: 12%;
    width: 10px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-paint__list-btn .c-btn__inner {
    padding: 6.25% 0;
  }
  .p-paint__list-btn .c-btn__inner::before {
    margin: 6.1% 0;
  }
}

@media screen and (min-width: 768px) {
  .p-paint__list-btn .c-btn__text {
    padding: 17px 60px 17px 40px;
    font-size: 15.5px;
    font-weight: 700;
  }
}

@media screen and (max-width: 767.9px) {
  .p-paint__list-btn .c-btn__text {
    padding: 1.4% 21% 1.4% 10%;
  }
}

/*============================
list
============================*/
.p-series {
  margin: 40px 0 100px;
}

@media screen and (max-width: 767.9px) {
  .p-series {
    margin: 4.1% 0 41px;
  }
}

.p-series__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 4.7%;
  padding-bottom: 1.5%;
}

@media screen and (max-width: 767.9px) {
  .p-series__list {
    margin: 0 auto;
    padding-top: 7%;
    padding-bottom: 0;
  }
}

.p-series__list-item {
  position: relative;
  margin-right: 2.75%;
  padding-bottom: 38px;
  width: 31.5%;
}

@media screen and (min-width: 768px) {
  .p-series__list-item:nth-of-type(3n) {
    margin-right: 0;
  }
  .p-series__list-item:nth-of-type(3n)::before {
    position: absolute;
    right: 0;
    bottom: -6px;
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
    width: 317.4%;
    height: 6px;
    content: "";
  }
}

@media screen and (min-width: 768px) and (max-width: 767.9px) {
  .p-series__list-item:nth-of-type(3n)::before {
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
  }
}

@media screen and (min-width: 768px) {
  .p-series__list-item:nth-of-type(n + 4) {
    margin-top: 4.2%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-series__list-item {
    margin: 0 0 7% 0;
    padding: 0 0 5.1% 2%;
    width: 48%;
  }
  .p-series__list-item:nth-of-type(even) {
    margin-left: 4%;
    padding: 0 2% 0 0;
  }
  .p-series__list-item:nth-of-type(even)::before {
    position: absolute;
    right: 0;
    bottom: -3px;
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
    width: 208%;
    height: 3px;
    content: "";
  }
}

@media screen and (max-width: 767.9px) and (max-width: 767.9px) {
  .p-series__list-item:nth-of-type(even)::before {
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
  }
}

.p-series__list-item:last-of-type::before {
  content: none;
}

.p-series__list-inner {
  -webkit-transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
  transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
}

.p-series__list-item:hover .p-series__list-inner {
  -webkit-transform: translateY(-7px);
      -ms-transform: translateY(-7px);
          transform: translateY(-7px);
}

.p-series__list-img {
  position: relative;
}

.p-series__list-img img {
  min-width: 100%;
}

.p-series__list-text {
  position: relative;
  -webkit-transition: color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  margin-top: 16px;
  padding-left: 37px;
  font-size: 21px;
  font-weight: 700;
}

@media screen and (max-width: 767.9px) {
  .p-series__list-text {
    margin-top: 9px;
    padding-left: 21px;
    font-size: 13px;
  }
}

.p-series__list-item:hover .p-series__list-text {
  color: #008b47;
}

.p-series__list-text::before {
  position: absolute;
  top: 0px;
  left: 5px;
  border-radius: 50%;
  background: #ffffff url(../img/common/icon/icon_arrow_dvd.png) no-repeat 0 0;
  background-size: contain;
  width: 24px;
  height: 24px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-series__list-text::before {
    top: -1px;
    left: 0;
    width: 16px;
    height: 16px;
  }
}

.p-series__list-link {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*============================
detail
============================*/
.p-seriesDetail {
  margin: 40px 0 178px;
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail {
    margin: 4.3% 0 150px;
  }
}

.p-seriesDetail__list {
  margin-top: 66px;
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__list {
    margin-top: 5.2%;
  }
}

.p-seriesDetail__list-item {
  padding-top: 4.7%;
  padding-bottom: 5.2%;
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__list-item {
    padding-top: 3%;
  }
}

.p-seriesDetail__list-item + .p-seriesDetail__list-item {
  margin-top: 24px;
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__list-item + .p-seriesDetail__list-item {
    margin-top: 3%;
  }
}

@media screen and (min-width: 768px) {
  .p-seriesDetail__list-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.p-seriesDetail__list-img {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-seriesDetail__list-img {
    margin-right: 4.6%;
    width: 50%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__list-img {
    margin: 0 auto;
    width: 74%;
  }
}

.p-seriesDetail__list-img::before {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #ffffff;
  width: 100%;
  height: 100%;
  pointer-events: none;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__list-img::before {
    border-width: 2px;
  }
}

.p-seriesDetail__list-desc {
  padding-top: 7px;
}

@media screen and (min-width: 768px) {
  .p-seriesDetail__list-desc {
    width: 45.4%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__list-desc {
    padding: 9px 2.5% 12px;
  }
}

.p-seriesDetail__list-ttl {
  position: relative;
  margin-bottom: 34px;
  padding-bottom: 27px;
  font-size: 31px;
  font-weight: 700;
  line-height: 1.25;
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__list-ttl {
    margin-bottom: 20px;
    padding: 10px 2.5% 14px;
    font-size: 17.5px;
    line-height: 1.3;
  }
}

.p-seriesDetail__list-ttl::after {
  position: absolute;
  bottom: 0;
  left: 0;
  background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
  width: 100%;
  height: 6px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__list-ttl::after {
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
  }
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__list-ttl::after {
    height: 3px;
  }
}

.p-seriesDetail__list-data {
  margin-top: 28px;
  padding-right: 1em;
  font-size: 17.5px;
  font-weight: 700;
  line-height: 1.6;
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__list-data {
    margin-top: 8px;
    font-size: 13.5px;
  }
}

.p-seriesDetail__list-data dt {
  color: #00579a;
}

.p-seriesDetail__nav {
  position: relative;
  margin: 33px auto 0;
}

@media screen and (min-width: 768px) {
  .p-seriesDetail__nav {
    width: 90.8%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__nav {
    margin-top: 25px;
  }
}

.p-seriesDetail__nav-btn {
  position: absolute;
  top: 0;
  width: 32%;
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__nav-btn {
    width: 49%;
  }
}

.p-seriesDetail__nav-btn.-prev {
  left: 0;
}

.p-seriesDetail__nav-btn.-index {
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (max-width: 767.9px) {
  .p-seriesDetail__nav-btn.-index {
    top: 52px;
  }
}

@media screen and (max-width: 767.9px) and (max-width: 767.9px) {
  .p-seriesDetail__nav-btn.-index {
    width: 68%;
  }
}

.p-seriesDetail__nav-btn.-next {
  right: 0;
}

.p-dvd__nav {
  margin: 35px auto 57px;
  font-size: 0;
  letter-spacing: -0.4em;
  text-align: center;
}

.p-dvd__nav > * {
  font-size: 15px;
  letter-spacing: normal;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__nav {
    margin: 7% auto 5.3%;
  }
}

.p-dvd__nav-item {
  display: inline-block;
  margin: 0 2px;
  width: 42.7%;
  max-width: 410px;
  text-align: left;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__nav-item {
    margin: 0;
    width: 47.5%;
  }
  .p-dvd__nav-item:nth-of-type(even) {
    margin-left: 1%;
  }
}

.p-dvd__nav-item + .p-dvd__nav-item {
  margin-left: 3.7%;
}

@media screen and (min-width: 768px) {
  .p-dvd__nav-item + .p-dvd__nav-item {
    margin-left: 1.2%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__nav-item .c-btn::after {
    right: 11%;
  }
}

@media screen and (min-width: 768px) {
  .p-dvd__nav-item .c-btn__inner {
    padding: 3.571% 0;
  }
  .p-dvd__nav-item .c-btn__inner::before {
    margin: 3.4% 0;
  }
}

@media screen and (min-width: 768px) {
  .p-dvd__nav-item .c-btn__text {
    padding: 19px 60px 19px 40px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__nav-item .c-btn__text {
    padding: 8px 19% 8px 15%;
    font-size: 13px;
  }
}

.p-dvd__movie {
  padding: 5.4% 10.7%;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__movie {
    padding: 6.8% 6% 4.3%;
  }
}

.p-dvd__movie-player {
  position: relative;
  border: 4px solid #ffffff;
  padding-top: 56.25%;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__movie-player {
    border-width: 2px;
  }
}

.p-dvd__movie-player iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-dvd__movie-wrap {
  margin-top: 16px;
}

@media screen and (min-width: 768px) {
  .p-dvd__movie-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__movie-wrap {
    margin: 10px auto;
    width: 97%;
  }
}

.p-dvd__movie-ttl {
  margin-top: 2.7%;
  font-size: 21.5px;
  font-weight: 800;
  line-height: 1.25;
}

@media screen and (min-width: 768px) {
  .p-dvd__movie-ttl {
    width: 47.56%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__movie-ttl {
    margin-top: 0;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.5;
  }
}

.swiper-container-initialized .p-dvd__movie-ttl-slide {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0 !important;
}

.swiper-container-initialized .p-dvd__movie-ttl-slide .p-in-text {
  -webkit-transform: translateX(-20px);
      -ms-transform: translateX(-20px);
          transform: translateX(-20px);
}

.swiper-container-initialized .p-dvd__movie-ttl-slide.swiper-slide-active {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1 !important;
}

.swiper-container-initialized .p-dvd__movie-ttl-slide.swiper-slide-active .p-in-text {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}

.p-dvd__movie-ttl-slide .p-in-text {
  position: relative;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  padding-left: 32px;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__movie-ttl-slide .p-in-text {
    padding-left: 23px;
  }
}

.p-dvd__movie-ttl-slide .p-in-text::before {
  position: absolute;
  top: 3px;
  left: 4px;
  background: url(../img/common/icon/icon_arw_yellow.png) no-repeat 0 0;
  background-size: contain;
  width: 24px;
  height: 24px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-dvd__movie-ttl-slide .p-in-text::before {
    width: 16px;
    height: 16px;
  }
}

.p-dvd__movie-thumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

@media screen and (min-width: 768px) {
  .p-dvd__movie-thumb {
    width: 50%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__movie-thumb {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 20px;
  }
}

.p-dvd__movie-thumb-item {
  position: relative;
  z-index: 1;
  cursor: pointer;
  margin-bottom: 8px;
  margin-left: 8px;
  border-radius: 3px;
  width: calc((100% - 32px) / 5);
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-dvd__movie-thumb-item {
    -webkit-transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
    transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
  }
  .p-dvd__movie-thumb-item:nth-of-type(5n + 1) {
    margin-left: 0;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__movie-thumb-item {
    margin: 0 4px 8px;
    border-radius: 2px;
    width: 12.7%;
  }
}

.p-dvd__movie-thumb-item::before {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

@media screen and (min-width: 768px) {
  .p-dvd__movie-thumb-item:hover {
    -webkit-transform: translateY(-7px);
        -ms-transform: translateY(-7px);
            transform: translateY(-7px);
  }
}

.p-dvd__movie-thumb-item.is-active {
  pointer-events: none;
}

.p-dvd__movie-thumb-item.is-active::before {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #ffffff;
  border-radius: 3px;
  background-color: rgba(255, 255, 255, 0.5);
  width: 100%;
  height: 100%;
  pointer-events: none;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-dvd__movie-thumb-item.is-active::before {
    border-width: 2px;
    border-radius: 2px;
  }
}

.p-dvd__pickup {
  margin-top: 62px;
  padding-top: 4%;
  padding-bottom: 58px;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup {
    margin-top: 25px;
    padding-bottom: 5.2%;
  }
}

.p-dvd__pickup-ttl {
  margin: 0 auto 47px;
  background: url(../img/dvd/ttl_dvd_bg.png) no-repeat 50% 0;
  background-size: contain;
  padding-top: 11px;
  width: 668px;
  height: 91px;
  font-size: 28px;
  font-weight: 700;
  text-align: center;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.45);
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-ttl {
    margin: 0 auto;
    background-image: url(../img/common/title/ttl_bg_1.png);
    padding: 3.2% 11% 6.5%;
    width: 90.5%;
    height: auto;
    font-size: 16.5px;
  }
}

.p-dvd__pickup-ttl .p-in-en {
  display: block;
  margin-top: 4px;
  color: #FFCD00;
  font-size: 12px;
  letter-spacing: 0.03em;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-ttl .p-in-en {
    margin-top: 2px;
    font-size: 11px;
  }
}

@media screen and (min-width: 768px) {
  .p-dvd__pickup-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.p-dvd__pickup-img {
  position: relative;
  padding: 4px;
  width: 44%;
}

@media screen and (min-width: 768px) {
  .p-dvd__pickup-img {
    margin-right: 6%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-img {
    margin: 4% auto 4.7%;
    width: 65%;
  }
}

.p-dvd__pickup-img::before {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #ffffff;
  width: 100%;
  height: 100%;
  pointer-events: none;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-img::before {
    border-width: 2px;
  }
}

@media screen and (min-width: 768px) {
  .p-dvd__pickup-text {
    width: 50%;
  }
}

.p-dvd__pickup-text a {
  text-decoration: underline;
}

.p-dvd__pickup-text a:hover {
  text-decoration: none;
}

.p-dvd__pickup-head {
  margin-bottom: 35px;
  font-size: 31.5px;
  font-weight: 800;
  line-height: 1.35;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-head {
    margin-bottom: 16px;
    padding: 0 2.5%;
    font-size: 20px;
  }
}

.p-dvd__pickup-head img {
  width: 88%;
  height: auto !important;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-head img {
    margin: 0 auto;
    width: 82%;
  }
}

.p-dvd__pickup-desc {
  margin-bottom: 34px;
  font-size: 18.5px;
  font-weight: 700;
  line-height: 1.55;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-desc {
    font-size: 13.5px;
    line-height: 1.7;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-desc {
    padding: 0 2.5%;
  }
}

.p-dvd__pickup-data {
  position: relative;
  padding: 34px 0 20px;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-data {
    padding: 23px 2.5% 14px;
  }
}

.p-dvd__pickup-data + .p-dvd__pickup-data {
  margin-top: 7px;
}

.p-dvd__pickup-data::before {
  position: absolute;
  top: 0;
  left: 0;
  background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
  width: 100%;
  height: 6px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-data::before {
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-data::before {
    height: 3px;
  }
}

.p-dvd__pickup-buy {
  margin-top: 5px;
  width: 98%;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-buy {
    margin: 8px auto;
    width: 80%;
    max-width: 291px;
  }
}

.p-dvd__pickup-buy .p-in-btn + li {
  margin-top: 11px;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-buy .p-in-btn + li {
    margin-top: 2.7%;
  }
}

.p-dvd__pickup-buy .p-in-btn a {
  text-decoration: none;
}

.p-dvd__pickup-buy .p-in-btn a[target="_blank"]::after {
  position: absolute;
  top: 0;
  right: 39px;
  z-index: 1;
  background-image: url(../img/common/icon/icon_btn_link.png);
  background-position: right 0 top 48%;
  background-repeat: no-repeat;
  background-size: contain;
  width: 21px;
  height: 100%;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-buy .p-in-btn a[target="_blank"]::after {
    right: 9.4%;
    width: 12px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__pickup-buy .p-in-btn .c-btn__text {
    padding: 7px 16%;
  }
}

@media screen and (min-width: 768px) {
  .p-dvd__pickup-buy .p-in-btn .c-btn__text {
    padding: 16px 60px 16px 40px;
  }
}

.p-dvd__pickup-buy .p-in-link {
  display: block;
  position: relative;
  background: url(../img/dvd/btn_bg.png) no-repeat 0 0;
  background-size: contain;
  padding-top: 21.46%;
}

.p-dvd__pickup-buy .p-in-link[target="_blank"]::after {
  position: absolute;
  top: 50%;
  right: 9.6%;
  margin-top: -10px;
  background: url(../img/common/icon/icon_btn_link.png) no-repeat right 0 top 0;
  background-size: contain;
  width: 18px;
  height: 18px;
  content: "";
}

.p-dvd__pickup-buy .p-in-text {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  padding: 10px 40px;
  width: 100%;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-align: center;
}

.p-dvd__all {
  margin-bottom: 102px;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__all {
    margin-bottom: 9%;
  }
}

.p-dvd__tab {
  margin: 60px 20px 0;
  padding-top: 20px;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__tab {
    margin: 20px 0 8px 0;
  }
}

.p-dvd__tab-wrapper {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.p-dvd__tab-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  border-top-right-radius: 5px;
  border-top-left-radius: 5px;
  background-color: #00579a;
}

@media screen and (min-width: 768px) {
  .p-dvd__tab-item {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-transform: translateY(7px);
        -ms-transform: translateY(7px);
            transform: translateY(7px);
    -webkit-transition: background-color 0.7s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.7s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.7s cubic-bezier(0, 1.52, 0.83, 1.29);
    transition: background-color 0.7s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.7s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.7s cubic-bezier(0, 1.52, 0.83, 1.29);
    transition: transform 0.7s cubic-bezier(0, 1.52, 0.83, 1.29), background-color 0.7s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.7s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.7s cubic-bezier(0, 1.52, 0.83, 1.29), background-color 0.7s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.7s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.7s cubic-bezier(0, 1.52, 0.83, 1.29);
    margin-right: 8px;
    padding: 5px 10px 15px;
    width: calc((100% - 24px) / 4);
    height: 92px;
  }
  .p-dvd__tab-item:nth-of-type(4n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__tab-item {
    border-radius: 3px;
    padding: 0.8% 4.5%;
    width: 45%;
    max-width: 200px;
    height: auto;
    min-height: 52px;
  }
}

.p-dvd__tab-item.is-active {
  background-color: #60bceb;
  pointer-events: none;
  color: #00579a;
}

.p-dvd__tab-item:hover {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
  transition: -webkit-transform 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
  transition: transform 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
  transition: transform 0.6s cubic-bezier(0, 1.52, 0.83, 1.29), -webkit-transform 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
}

.p-dvd__tab-text {
  position: relative;
  padding-left: 38px;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.4;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__tab-text {
    padding-left: 23px;
    font-size: 12.5px;
  }
}

.p-dvd__tab-text::before, .p-dvd__tab-text::after {
  position: absolute;
  top: 50%;
  left: -7px;
  -webkit-transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
  transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
  margin-top: -17px;
  background: url(../img/dvd/icon_dvd.png) no-repeat 0 0;
  background-size: contain;
  width: 34px;
  height: 34px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-dvd__tab-text::before, .p-dvd__tab-text::after {
    left: 0;
    margin-top: -9px;
    width: 16px;
    height: 16px;
  }
}

.is-active .p-dvd__tab-text::before {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
}

.p-dvd__tab-text::after {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
  background-image: url(../img/dvd/icon_dvd_active.png);
}

.is-active .p-dvd__tab-text::after {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
}

.p-dvd__index {
  position: relative;
  z-index: 1;
  padding: 40px 3.7% 38px;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__index {
    padding: 20px 3.7% 9px;
  }
}

.p-dvd__index-item {
  -webkit-animation: fade_in_bottom 0.7s cubic-bezier(0.215, 0.61, 0.355, 1);
          animation: fade_in_bottom 0.7s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@media screen and (max-width: 767.9px) {
  .p-dvd__index-item {
    -webkit-animation-name: fade_in_bottom_sp;
            animation-name: fade_in_bottom_sp;
  }
}

.p-dvd__index-item.is-active {
  display: block;
}

.p-dvd__index-ttl {
  margin-bottom: 58px;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__index-ttl {
    margin-bottom: 20px;
  }
}

.p-dvd__index-catch {
  margin: 58px 0 38px;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__index-catch {
    margin: 26px 0 26px;
    font-size: 16px;
    line-height: 1.5;
  }
}

.p-dvd__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 40px 40px 0;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__list {
    margin: 0 auto;
    background-image: url();
    width: 96%;
  }
}

.p-dvd__list-item {
  position: relative;
  -webkit-transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
  transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
  margin-right: 2.66%;
  margin-bottom: 23px;
  width: 23%;
}

@media screen and (min-width: 768px) {
  .p-dvd__list-item:nth-of-type(4n) {
    margin-right: 0;
  }
  .p-dvd__list-item:hover {
    -webkit-transform: translateY(-7px);
        -ms-transform: translateY(-7px);
            transform: translateY(-7px);
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvd__list-item {
    margin: 0 0 7% 0;
    width: 48%;
  }
  .p-dvd__list-item:nth-of-type(even) {
    margin-left: 4%;
  }
}

.p-dvd__list-img {
  position: relative;
  padding-top: 140%;
}

.p-dvd__list-img > div {
  position: absolute;
  top: 0;
  left: 0;
  background-position: left 50% bottom 0;
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
}

.p-dvd__list-img img {
  min-width: 100%;
}

.p-dvd__list-text {
  -webkit-transition: color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  margin-top: 13px;
  font-size: 16.5px;
  font-weight: 800;
  line-height: 1.65;
}

@media screen and (max-width: 767.9px) {
  .p-dvd__list-text {
    margin-top: 5.3%;
    font-size: 12px;
    letter-spacing: 0.04em;
    line-height: 1.4;
  }
}

@media screen and (min-width: 768px) {
  .p-dvd__list-item:hover .p-dvd__list-text {
    color: #FFCD00;
  }
}

.p-dvd__list-link {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*============================
dvd detail
============================*/
.p-dvdDetail {
  margin-bottom: 86px;
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail {
    margin-bottom: 11%;
  }
}

.p-dvdDetail__cont {
  margin: 40px 0;
  padding: 33px 0 53px;
  overflow: hidden;
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__cont {
    margin: 4.5% 0 7%;
    padding: 2.5% 0 1.5%;
  }
}

.p-dvdDetail__ttl {
  position: relative;
  background-color: #00579a;
  padding: 32px 150px 32px 5.2%;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.3;
}

@media screen and (min-width: 768px) {
  .p-dvdDetail__ttl::before {
    position: absolute;
    top: 0;
    right: 4px;
    background: url(../img/dvd/bg_cap.png) no-repeat right top;
    width: 100%;
    height: 100%;
    pointer-events: none;
    content: "";
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__ttl {
    padding: 15px 5% 15px;
    font-size: 15.5px;
    font-size: clamp(14px, 4.13vw, 24px);
    letter-spacing: 0.03em;
    line-height: 1.4;
  }
}

.p-dvdDetail__wrap {
  margin: 40px auto 0;
  width: 89.6%;
}

@media screen and (min-width: 768px) {
  .p-dvdDetail__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__wrap {
    margin-top: 7%;
    width: 93%;
  }
}

.p-dvdDetail__img {
  position: relative;
  padding: 4px;
}

@media screen and (min-width: 768px) {
  .p-dvdDetail__img {
    margin-right: 6%;
    width: 44%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__img {
    margin: 0 auto;
    padding: 2px;
    width: 65%;
  }
}

.p-dvdDetail__img::before {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #ffffff;
  width: 100%;
  height: 100%;
  pointer-events: none;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__img::before {
    border-width: 2px;
  }
}

.p-dvdDetail__text {
  padding-top: 14px;
  font-size: 18.5px;
  font-weight: 700;
  line-height: 1.55;
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__text {
    font-size: 13.5px;
    line-height: 1.7;
  }
}

@media screen and (min-width: 768px) {
  .p-dvdDetail__text {
    width: 50%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-top: 20px;
  }
}

.p-dvdDetail__text a {
  text-decoration: underline;
}

.p-dvdDetail__text a:hover {
  text-decoration: none;
}

.p-dvdDetail__text-desc {
  margin-bottom: 38px;
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__text-desc {
    margin: 0 0 20px;
    padding: 0 2.8%;
  }
}

.p-dvdDetail__text-data {
  position: relative;
  padding: 34px 0 20px;
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__text-data {
    padding: 24px 2.3%;
  }
}

.p-dvdDetail__text-data:first-of-type {
  margin-top: 20px;
}

.p-dvdDetail__text-data + .p-dvdDetail__text-data {
  margin-top: 7px;
}

.p-dvdDetail__text-data::before {
  position: absolute;
  top: 0;
  left: 0;
  background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
  width: 100%;
  height: 6px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__text-data::before {
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
  }
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__text-data::before {
    height: 3px;
  }
}

.p-dvdDetail__buy {
  margin-top: 13px;
  width: 98%;
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__buy {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    margin: 0 auto 23px;
    width: 81%;
    max-width: 291px;
  }
}

.p-dvdDetail__buy .p-in-btn + .p-in-btn {
  margin-top: 2.7%;
}

.p-dvdDetail__buy .p-in-btn .c-btn__inner {
  text-decoration: none;
}

.p-dvdDetail__buy .p-in-btn .c-btn__inner[target="_blank"]::after {
  position: absolute;
  top: 0;
  right: 39px;
  z-index: 1;
  background-image: url(../img/common/icon/icon_btn_link.png);
  background-position: right 0 top 48%;
  background-repeat: no-repeat;
  background-size: contain;
  width: 21px;
  height: 100%;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__buy .p-in-btn .c-btn__inner[target="_blank"]::after {
    right: 9.4%;
    width: 12px;
  }
}

.p-dvdDetail__back {
  position: relative;
  margin: 0 auto;
  width: 320px;
}

@media screen and (max-width: 767.9px) {
  .p-dvdDetail__back {
    width: 73%;
    max-width: 288px;
  }
  .p-dvdDetail__back .c-pagination {
    padding: 8px 20px 8px 30px;
  }
}

.p-world {
  margin: 0 0 100px 0;
}

@media screen and (max-width: 767.9px) {
  .p-world {
    margin-bottom: 11%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-world__block .c-box {
    padding: 6% 4.5% 7%;
  }
}

.p-world__block:first-of-type {
  margin-top: 42px;
}

@media screen and (max-width: 767.9px) {
  .p-world__block:first-of-type {
    margin-top: 4.3%;
  }
}

.p-world__block + .p-world__block {
  margin-top: 81px;
}

@media screen and (max-width: 767.9px) {
  .p-world__block + .p-world__block {
    margin-top: 9%;
  }
}

.p-world__block-ttl {
  margin-bottom: 63px;
}

@media screen and (max-width: 767.9px) {
  .p-world__block-ttl {
    margin-bottom: 5.5%;
  }
}

.p-world__dayout,
.p-world__edaville,
.p-world__kenny,
.p-world__dayout {
  padding-top: 3.6%;
  padding-bottom: 4.4%;
}

.p-world__dayout-img,
.p-world__edaville-img,
.p-world__kenny-img,
.p-world__dayout-img {
  margin-bottom: 33px;
}

@media screen and (max-width: 767.9px) {
  .p-world__dayout-img,
  .p-world__edaville-img,
  .p-world__kenny-img,
  .p-world__dayout-img {
    margin-bottom: 4.6%;
  }
}

.p-world__dayout-text,
.p-world__edaville-text,
.p-world__kenny-text,
.p-world__dayout-text {
  padding: 0 22px;
  font-size: 18.5px;
  font-weight: 700;
  line-height: 1.55;
}

@media screen and (max-width: 767.9px) {
  .p-world__dayout-text,
  .p-world__edaville-text,
  .p-world__kenny-text,
  .p-world__dayout-text {
    padding: 0 1.8%;
    font-size: 13px;
    line-height: 1.7;
  }
}

.p-world__dayout-text .p-in-text,
.p-world__edaville-text .p-in-text,
.p-world__kenny-text .p-in-text,
.p-world__dayout-text .p-in-text {
  text-align: justify;
}

.p-world__dayout-link,
.p-world__edaville-link,
.p-world__kenny-link,
.p-world__dayout-link {
  margin-top: 29px;
  font-size: 0;
  letter-spacing: -0.4em;
  text-align: center;
}

.p-world__dayout-link > *,
.p-world__edaville-link > *,
.p-world__kenny-link > *,
.p-world__dayout-link > * {
  font-size: 15px;
  letter-spacing: normal;
}

@media screen and (max-width: 767.9px) {
  .p-world__dayout-link,
  .p-world__edaville-link,
  .p-world__kenny-link,
  .p-world__dayout-link {
    margin-top: 23px;
  }
}

.p-world__dayout-link .p-in-btn,
.p-world__edaville-link .p-in-btn,
.p-world__kenny-link .p-in-btn,
.p-world__dayout-link .p-in-btn {
  display: inline-block;
  margin: 0 5px 10px;
  width: 470px;
}

@media screen and (max-width: 767.9px) {
  .p-world__dayout-link .p-in-btn,
  .p-world__edaville-link .p-in-btn,
  .p-world__kenny-link .p-in-btn,
  .p-world__dayout-link .p-in-btn {
    margin: 0 auto;
    width: 90%;
    max-width: 323px;
  }
}

.p-world__dayout-link .c-btn__text,
.p-world__edaville-link .c-btn__text,
.p-world__kenny-link .c-btn__text,
.p-world__dayout-link .c-btn__text {
  display: inline-block;
  position: relative;
  letter-spacing: 0.03em;
}

@media screen and (max-width: 767.9px) {
  .p-world__dayout-link .c-btn__text,
  .p-world__edaville-link .c-btn__text,
  .p-world__kenny-link .c-btn__text,
  .p-world__dayout-link .c-btn__text {
    padding: 6px 12px;
    line-height: 1.55;
    text-align: left;
  }
}

@media screen and (min-width: 768px) {
  .p-world__dayout-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

@media screen and (min-width: 768px) {
  .p-world__dayout-text .p-in-block {
    width: 48%;
  }
  .p-world__dayout-text .p-in-block:nth-of-type(even) {
    margin-left: 4%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-world__dayout-text .p-in-block + .p-in-block {
    margin-top: 14px;
  }
}

.p-world__dayout-text .p-in-ttl {
  margin-bottom: 4px;
  color: #00579a;
  font-size: 24.5px;
  font-weight: 800;
}

@media screen and (max-width: 767.9px) {
  .p-world__dayout-text .p-in-ttl {
    margin-bottom: 2px;
    font-size: 16px;
  }
}

.p-world__edaville-img {
  margin-bottom: 35px;
}

@media screen and (max-width: 767.9px) {
  .p-world__edaville-img {
    margin-bottom: 5.5%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-guide {
    margin-bottom: 11%;
  }
}

.p-guide__link {
  margin: 40px auto 61px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__link {
    margin: 4% auto 8.5%;
  }
}

.p-guide__link-cont {
  padding-top: 6.9%;
  padding-bottom: 5.4%;
}

@media screen and (max-width: 767.9px) {
  .p-guide__link-cont {
    padding-top: 30px;
    padding-bottom: 28px;
  }
}

.p-guide__link-list {
  font-size: 0;
  letter-spacing: -0.4em;
}

.p-guide__link-list > * {
  font-size: 15px;
  letter-spacing: normal;
}

@media screen and (max-width: 767.9px) {
  .p-guide__link-list {
    margin: 0 auto;
    width: 87%;
    max-width: 320px;
  }
}

@media screen and (min-width: 768px) {
  .p-guide__link-list-btn {
    display: inline-block;
    vertical-align: top;
    margin-bottom: 15px;
    width: 47.4%;
  }
  .p-guide__link-list-btn:nth-of-type(even) {
    margin-left: 5%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-guide__link-list-btn + .p-guide__link-list-btn {
    margin-top: 19px;
  }
}

.p-guide__link-list-btn .c-btn__inner[target="_blank"]::after {
  position: absolute;
  top: 0;
  right: 39px;
  z-index: 1;
  background-image: url(../img/common/icon/icon_btn_link.png);
  background-position: right 0 top 50%;
  background-position: right 0 top 48%;
  background-repeat: no-repeat;
  background-size: contain;
  width: 21px;
  height: 100%;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-guide__link-list-btn .c-btn__inner[target="_blank"]::after {
    right: 9.4%;
    width: 14px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-guide__link-list-btn .c-btn__text {
    padding: 8px 16.5% 8px 10%;
  }
}

@media screen and (min-width: 768px) {
  .p-guide__link-list-btn .c-btn__text {
    font-size: 17px;
  }
}

.p-guide__block {
  margin-bottom: 100px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__block {
    margin-bottom: 9%;
  }
}

.p-guide__map {
  position: relative;
  margin-top: 62px;
  padding-top: 4.8%;
  padding-bottom: 4.6%;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-guide__map {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (max-width: 767.9px) {
  .p-guide__map {
    margin-top: 5.8%;
    padding: 9.3% 5% 5.8%;
  }
}

@media screen and (min-width: 768px) {
  .p-guide__map-wrap {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
  }
  .p-guide__map-wrap + .p-guide__map-wrap {
    margin-left: 5px;
  }
}

.p-guide__map-item {
  margin-bottom: 32px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__map-item {
    margin-bottom: 21px;
  }
}

.p-guide__map-ttl {
  position: relative;
  font-size: 18px;
  letter-spacing: -0.02em;
  line-height: 1.35;
}

@media screen and (max-width: 767.9px) {
  .p-guide__map-ttl {
    font-size: 14px;
  }
}

.p-guide__map-ttl a {
  display: inline-block;
  position: relative;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  padding-left: 34px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__map-ttl a {
    padding-left: 28px;
  }
}

.p-guide__map-ttl a:hover {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
  opacity: 0.6;
}

.p-guide__map-ttl a::before {
  position: absolute;
  top: 2px;
  left: 3px;
  background: url(../img/guide/icon_news.png) no-repeat 0 0;
  background-size: 22px auto;
  width: 22px;
  height: 22px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-guide__map-ttl a::before {
    top: -1px;
    background-size: 20px auto;
    width: 20px;
    height: 20px;
  }
}

.-news .p-guide__map-ttl a::before {
  background-image: url(../img/guide/icon_news.png);
}

.-about .p-guide__map-ttl a::before {
  background-image: url(../img/guide/icon_about.png);
}

.-dvd .p-guide__map-ttl a::before {
  background-image: url(../img/guide/icon_dvd.png);
}

.-goods .p-guide__map-ttl a::before {
  background-image: url(../img/guide/icon_goods.png);
}

.-download .p-guide__map-ttl a::before {
  background-image: url(../img/guide/icon_download.png);
}

.-shop .p-guide__map-ttl a::before {
  background-image: url(../img/guide/icon_shop.png);
}

.-event .p-guide__map-ttl a::before {
  background-image: url(../img/guide/icon_event.png);
}

.-guide .p-guide__map-ttl a::before {
  background-image: url(../img/guide/icon_guide.png);
}

.p-guide__map-ttl a[target="_blank"] {
  padding-right: 22px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__map-ttl a[target="_blank"] {
    padding-right: 28px;
  }
}

.p-guide__map-ttl a[target="_blank"]::after {
  position: absolute;
  top: 4px;
  right: 0;
  background: url(../img/common/icon/icon_btn_link.png) no-repeat right 0 top 0;
  background-size: contain;
  width: 16px;
  height: 16px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-guide__map-ttl a[target="_blank"]::after {
    top: 1px;
    width: 14px;
    height: 14px;
  }
}

.p-guide__map-list {
  margin-top: 10px;
  padding-left: 40px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__map-list {
    margin-top: 11px;
    padding-left: 42px;
  }
}

.p-guide__map-list-item {
  font-size: 13.5px;
  line-height: 1.4;
}

@media screen and (max-width: 767.9px) {
  .p-guide__map-list-item {
    font-size: 12px;
  }
}

.p-guide__map-list-item + .p-guide__map-list-item {
  margin-top: 10px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__map-list-item + .p-guide__map-list-item {
    margin-top: 12px;
  }
}

.p-guide__map-list-item a {
  display: inline-block;
  position: relative;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  padding-left: 17px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__map-list-item a {
    padding-left: 15px;
  }
}

@media screen and (min-width: 768px) {
  .p-guide__map-list-item a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
    opacity: 0.6;
  }
}

.p-guide__map-list-item a::before {
  position: absolute;
  top: 3px;
  left: 0;
  background: url(../img/common/icon/icon_btn_arw.png) no-repeat 0 0;
  background-size: contain;
  width: 6px;
  height: 12px;
  content: "";
}

.p-guide__about {
  margin-top: 64px;
  padding-top: 4.8%;
  padding-bottom: 5.55%;
  word-break: break-all;
}

@media screen and (max-width: 767.9px) {
  .p-guide__about {
    margin-top: 5.6%;
    padding-top: 6%;
    padding-bottom: 7.9%;
  }
}

.p-guide__about-block {
  position: relative;
  font-size: 18.5px;
  font-weight: 700;
  line-height: 1.55;
}

@media screen and (max-width: 767.9px) {
  .p-guide__about-block {
    font-size: 13.5px;
    line-height: 1.7;
  }
}

@media screen and (max-width: 767.9px) {
  .p-guide__about-block {
    font-size: 11px;
  }
}

.p-guide__about-block + .p-guide__about-block {
  margin-top: 59px;
  padding-top: 47px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__about-block + .p-guide__about-block {
    margin-top: 26px;
    padding-top: 23px;
  }
}

.p-guide__about-block + .p-guide__about-block::before {
  position: absolute;
  top: 0;
  left: 0;
  background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
  width: 100%;
  height: 6px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-guide__about-block + .p-guide__about-block::before {
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
  }
}

@media screen and (max-width: 767.9px) {
  .p-guide__about-block + .p-guide__about-block::before {
    height: 3px;
  }
}

.p-guide__about-ttl {
  margin-bottom: 37px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__about-ttl {
    margin-bottom: 20px;
  }
}

.p-guide__use {
  padding: 0 22px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__use {
    padding: 0 2.5%;
  }
}

.p-guide__terms {
  padding: 0 20px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__terms {
    padding: 0 2.5%;
  }
}

.p-guide__terms-item + .p-guide__terms-item {
  margin-top: 30px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__terms-item + .p-guide__terms-item {
    margin-top: 24px;
  }
}

.p-guide__terms-ttl {
  position: relative;
  margin-bottom: 12px;
  padding-left: 32px;
  color: #00579a;
  font-size: 22px;
  font-weight: 800;
}

@media screen and (max-width: 767.9px) {
  .p-guide__terms-ttl {
    margin-bottom: 7px;
    padding-left: 23px;
    font-size: 13.5px;
    line-height: 1.5;
  }
}

.p-guide__terms-ttl::before {
  position: absolute;
  top: 5px;
  left: 2px;
  border-radius: 50%;
  background: #ffffff url(../img/common/icon/icon_arrow_download.png) no-repeat 0 0;
  background-size: contain;
  width: 24px;
  height: 24px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-guide__terms-ttl::before {
    top: 2px;
    left: 0;
    width: 18px;
    height: 18px;
  }
}

.p-guide__terms-desc {
  text-align: justify;
}

.p-guide__terms-desc .p-in-numList {
  counter-reset: 1 num;
}

.p-guide__terms-desc .p-in-numList > li {
  position: relative;
  counter-increment: num;
  padding-left: 1.2em;
}

.p-guide__terms-desc .p-in-numList > li::before {
  position: absolute;
  top: 0;
  left: 0;
  content: counter(num) ".";
}

.p-guide__terms-desc .p-in-note > li {
  position: relative;
  padding-left: 1.4em;
}

.p-guide__terms-desc .p-in-note > li::before {
  position: absolute;
  top: 0;
  left: 0;
  font-family: "M PLUS Rounded 1c", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;
  content: "・";
}

.p-guide__contact {
  position: relative;
  z-index: 1;
  margin-top: 64px;
  padding-top: 5%;
  padding-bottom: 5.7%;
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact {
    margin-top: 5.5%;
    padding-top: 8.8%;
    padding-bottom: 12%;
  }
}

.p-guide__contact::after {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
  background: url(../img/common/bg/bg_rail.png) no-repeat right 0 bottom 0;
  background-size: contain;
  width: 241px;
  height: 173px;
  pointer-events: none;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact::after {
    background-size: 33.8% auto;
    background-size: clamp(80px, 33.8%, 170px) auto;
    width: 100%;
    height: 100%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact-item {
    padding: 0 2.5%;
  }
}

.p-guide__contact-ttl {
  position: relative;
  margin-bottom: 15px;
  padding-left: 32px;
  color: #00579a;
  font-size: 22px;
  font-weight: 800;
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact-ttl {
    margin-bottom: 7px;
    padding-left: 23px;
    font-size: 13.5px;
    line-height: 1.5;
  }
}

.p-guide__contact-ttl:not(:first-child) {
  margin-top: 40px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact-ttl:not(:first-child) {
    margin-top: 30px;
  }
}

.p-guide__contact-ttl::before {
  position: absolute;
  top: 2px;
  left: 2px;
  border-radius: 50%;
  background: #ffffff url(../img/common/icon/icon_arrow_download.png) no-repeat 0 0;
  background-size: contain;
  width: 24px;
  height: 24px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact-ttl::before {
    top: 2px;
    left: 0;
    width: 18px;
    height: 18px;
  }
}

.p-guide__contact-inner {
  padding: 0 20px;
  font-size: 18.5px;
  font-weight: 700;
  line-height: 1.55;
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact-inner {
    font-size: 13.5px;
    line-height: 1.7;
  }
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact-inner {
    padding: 0;
  }
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact-data {
    line-height: 1.5;
  }
}

.p-guide__contact-btn {
  margin-top: 20px;
}

@media screen and (min-width: 768px) {
  .p-guide__contact-btn {
    display: inline-block;
    vertical-align: top;
    margin-bottom: 15px;
    width: 41.7%;
  }
}

.p-guide__contact-btn .c-btn__inner[target="_blank"] {
  padding-right: 33px;
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact-btn .c-btn__inner[target="_blank"] {
    padding-right: 28px;
  }
}

.p-guide__contact-btn .c-btn__inner[target="_blank"]::after {
  position: absolute;
  top: 0;
  right: 39px;
  z-index: 1;
  background-image: url(../img/common/icon/icon_btn_link.png);
  background-position: right 0 top 50%;
  background-position: right 0 top 48%;
  background-repeat: no-repeat;
  background-size: contain;
  width: 21px;
  height: 100%;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact-btn .c-btn__inner[target="_blank"]::after {
    right: 9.4%;
    width: 14px;
  }
}

@media screen and (min-width: 768px) {
  .p-guide__contact-btn .c-btn__text {
    font-size: 17px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact-btn .c-btn__text {
    padding: 8px 16.5% 8px 10%;
  }
}

.p-guide__contact-note {
  margin: 4px 0;
  font-size: 0.8em;
}

@media screen and (max-width: 767.9px) {
  .p-guide__contact-note {
    margin: 0;
  }
}

.p-guide__contact-note > li {
  padding-left: 1em;
  text-indent: -1em;
}

.p-game {
  margin: 40px 0 100px;
}

.p-download {
  margin: 40px 0 64px;
}

@media screen and (max-width: 767.9px) {
  .p-download {
    margin: 4% 0 11%;
  }
}

.p-download__block {
  margin-bottom: 64px;
}

@media screen and (max-width: 767.9px) {
  .p-download__block {
    margin-bottom: 6%;
  }
}

.p-download__block + .p-download__block {
  margin-top: 86px;
}

@media screen and (max-width: 767.9px) {
  .p-download__block + .p-download__block {
    margin-top: 8.8%;
  }
}

.p-download__block-ttl {
  margin-bottom: 63px;
}

@media screen and (max-width: 767.9px) {
  .p-download__block-ttl {
    margin-bottom: 5%;
  }
}

.p-download__ttl {
  position: relative;
  background: url(../img/download/ttl_bg_1.png) no-repeat 0 0;
  background-size: contain;
  padding-top: 23.3%;
}

@media screen and (max-width: 767.9px) {
  .p-download__ttl {
    margin: 0 auto;
    background: url(../img/common/title/ttl_bg_1.png) no-repeat 50% 0;
    background-size: contain;
    padding: 5.3% 11% 9.4%;
    width: 91%;
    color: #FFCD00;
    font-size: 4.26vw;
    font-weight: 700;
    letter-spacing: normal;
    text-align: center;
    text-shadow: 0 0 4px rgba(0, 0, 0, 0.45);
  }
}

@media screen and (max-width: 767.9px) and (min-width: 493px) {
  .p-download__ttl {
    padding: 23px 48px 41px;
    width: 396px;
    font-size: 21px;
  }
}

.p-download__ttl.-orange {
  background-image: url(../img/download/ttl_bg_2.png);
}

@media screen and (max-width: 767.9px) {
  .p-download__ttl.-orange {
    background-image: url(../img/common/title/ttl_bg_2.png);
  }
}

.p-download__ttl.-green {
  background-image: url(../img/download/ttl_bg_3.png);
}

@media screen and (max-width: 767.9px) {
  .p-download__ttl.-green {
    background-image: url(../img/common/title/ttl_bg_3.png);
  }
}

@media screen and (max-width: 767.9px) {
  .p-download__ttl.-line2 {
    padding: 2.3% 11% 6.8%;
    font-size: 4.26vw;
  }
}

@media screen and (max-width: 767.9px) and (min-width: 493px) {
  .p-download__ttl.-line2 {
    padding: 10px 48px 30px;
    font-size: 21px;
  }
}

.p-download__ttl span {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  color: #FFCD00;
  font-size: 22px;
  font-size: clamp(19px, 1.8vw, 24px);
  font-weight: 700;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.45);
}

.p-download__movie {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-download__movie {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 58px 5.4% 77px 0;
    overflow: hidden;
  }
  .p-download__movie::before {
    position: absolute;
    top: -65px;
    right: -9px;
    background: url(../img/common/bg/bg_arrow.png) no-repeat 0 0;
    background-size: contain;
    width: 184px;
    height: 184px;
    content: "";
  }
}

@media screen and (max-width: 767.9px) {
  .p-download__movie {
    padding: 3.8% 3.5% 7%;
  }
}

.p-download__movie-desc {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-download__movie-desc {
    width: 44.3%;
  }
}

@media screen and (min-width: 768px) {
  .p-download__movie-wrap {
    padding: 0 6% 0 12.8%;
  }
}

.p-download__movie-player {
  margin-top: 2.3%;
  width: 55.7%;
}

@media screen and (max-width: 767.9px) {
  .p-download__movie-player {
    margin: 4% auto 0;
    width: 87%;
  }
}

.p-download__movie-player .p-in-embed {
  position: relative;
  padding-top: 56.25%;
}

.p-download__movie-player .p-in-embed::before {
  position: absolute;
  top: -2px;
  right: -2px;
  bottom: -2px;
  left: -2px;
  z-index: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #ffffff;
  pointer-events: none;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-download__movie-player .p-in-embed::before {
    border-width: 2px;
  }
}

.p-download__movie-player .p-in-embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .p-download__movie-ttl {
    margin: 0 30px 16px 0;
  }
  .p-download__movie-ttl span {
    padding: 2.7% 11% 0 12.5%;
  }
}

.p-download__movie-lead {
  margin-bottom: 14%;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.55;
}

@media screen and (max-width: 767.9px) {
  .p-download__movie-lead {
    margin: 18px auto 0;
    width: 85%;
    font-size: 14px;
  }
}

.p-download__movie-btn {
  width: 88%;
}

@media screen and (max-width: 767.9px) {
  .p-download__movie-btn {
    margin: 24px auto 0;
    width: 87%;
    max-width: 360px;
  }
}

@media screen and (min-width: 768px) {
  .p-download__movie-btn .c-btn::after {
    right: 30px;
  }
}

.p-download__movie-btn .c-btn__text {
  padding: 15px 60px 15px 40px;
}

@media screen and (max-width: 767.9px) {
  .p-download__movie-btn .c-btn__text {
    padding: 7px 10%;
  }
}

.p-download__movie-sup {
  margin-top: 14px;
  font-size: 12px;
  line-height: 1.4;
}

.p-download__paint {
  padding-top: 61px;
  padding-bottom: 42px;
}

@media screen and (max-width: 767.9px) {
  .p-download__paint {
    padding-top: 3.9%;
    padding-bottom: 7.8%;
  }
}

.p-download__paint-new {
  position: relative;
  padding-bottom: 41px;
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-new {
    padding-bottom: 8.8%;
  }
}

@media screen and (min-width: 768px) {
  .p-download__paint-new {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: 102%;
  }
  .p-download__paint-new::before {
    position: absolute;
    right: -14px;
    bottom: 95px;
    -webkit-transform: rotate(30deg);
        -ms-transform: rotate(30deg);
            transform: rotate(30deg);
    background: url(../img/common/bg/bg_flag.png) no-repeat 0 0;
    background-size: contain;
    width: 216px;
    height: 172px;
    content: "";
  }
}

.p-download__paint-img {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-download__paint-img {
    width: 57%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-img {
    margin: 0 auto;
    width: 86%;
  }
}

.p-download__paint-img::before {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 2px solid #d2d2d2;
  width: 100%;
  height: 100%;
  pointer-events: none;
  content: "";
}

.p-download__paint-desc {
  padding-top: 2.9%;
}

@media screen and (min-width: 768px) {
  .p-download__paint-desc {
    width: 43%;
  }
}

.p-download__paint-wrap {
  padding: 0 9%;
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-wrap {
    padding: 0 8%;
  }
}

.p-download__paint-ttl {
  margin-bottom: 25px;
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-ttl {
    margin-bottom: 3.5%;
  }
}

.p-download__paint-ttl span {
  padding: 6.3% 10% 0 9.5%;
}

.p-download__paint-lead {
  margin: 25px 0 35px;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.55;
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-lead {
    margin: 5px 0 4px;
    font-size: 13.5px;
  }
}

.p-download__paint-btn {
  margin-top: 67px;
  margin-top: 18.4%;
  width: 80.1%;
}

@media screen and (min-width: 768px) {
  .p-download__paint-btn {
    min-width: 283px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-btn {
    margin-top: 9%;
    margin-left: -2%;
    width: 104%;
  }
}

@media screen and (max-width: 767.9px) and (min-width: 467px) {
  .p-download__paint-btn {
    margin: 31px auto 0;
    width: 360px;
  }
}

@media screen and (min-width: 768px) {
  .p-download__paint-btn .c-btn::after {
    right: 26px;
  }
}

.p-download__paint-btn .c-btn__text {
  padding: 17px 60px 17px 40px;
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-btn .c-btn__text {
    padding: 8px 15% 8px 10%;
  }
}

.p-download__paint-index {
  position: relative;
  padding-top: 47px;
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-index {
    padding-top: 8.7%;
  }
}

.p-download__paint-index::before {
  position: absolute;
  top: 0;
  left: 0;
  background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
  width: 100%;
  height: 6px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-index::before {
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
  }
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-index::before {
    height: 3px;
  }
}

.p-download__paint-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin: 0 20px;
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-list {
    margin: 0 auto;
    width: 95.5%;
  }
}

.p-download__paint-list-item {
  position: relative;
  margin-right: 2.66%;
  margin-bottom: 15px;
  width: 23%;
}

@media screen and (min-width: 768px) {
  .p-download__paint-list-item {
    -webkit-transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
    transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
  }
  .p-download__paint-list-item:nth-of-type(4n) {
    margin-right: 0;
  }
  .p-download__paint-list-item:hover {
    -webkit-transform: translateY(-7px);
        -ms-transform: translateY(-7px);
            transform: translateY(-7px);
  }
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-list-item {
    margin-right: 4%;
    margin-bottom: 3.5%;
    width: 48%;
  }
  .p-download__paint-list-item:nth-of-type(even) {
    margin-right: 0;
  }
}

.p-download__paint-list-item img {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-download__paint-list-item img {
    border: 2px solid #d2d2d2;
  }
}

.p-download__paint-more {
  margin: 19px auto 0;
  width: 291px;
}

@media screen and (max-width: 767.9px) {
  .p-download__paint-more {
    margin-top: 1.5%;
    width: 87%;
    max-width: 360px;
  }
}

@media screen and (min-width: 768px) {
  .p-download__paint-more .c-btn__text {
    padding: 16px 14px;
  }
  .p-download__paint-more .c-btn__text::before {
    top: 19px;
  }
}

.p-download__app {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-download__app {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 61px 0 62px 5.3%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-download__app {
    padding-top: 4%;
    padding-bottom: 7.6%;
  }
}

@media screen and (min-width: 768px) {
  .p-download__app:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 61px 5.3% 62px 0;
  }
  .p-download__app:nth-of-type(even)::before {
    right: auto;
    bottom: auto;
    bottom: 0;
    left: 34.6%;
    -webkit-transform: rotate(-30deg);
        -ms-transform: rotate(-30deg);
            transform: rotate(-30deg);
    margin-bottom: 4.5%;
    background: url(../img/common/bg/bg_r.png) no-repeat 0 0;
    background-size: contain;
    width: 148px;
    height: 148px;
  }
  .p-download__app:nth-of-type(even) .p-download__app-img {
    margin-top: 2.7%;
  }
  .p-download__app:nth-of-type(even) .p-download__app-desc {
    margin-top: 0;
    margin-right: 3.3%;
  }
  .p-download__app:nth-of-type(even) .p-download__app-ttl span {
    padding-left: 10%;
  }
  .p-download__app:nth-of-type(even) .p-download__app-wrap {
    padding: 0 1% 0 11.5%;
  }
}

.p-download__app + .p-download__app {
  margin-top: 64px;
}

@media screen and (max-width: 767.9px) {
  .p-download__app + .p-download__app {
    margin-top: 3.4%;
  }
}

@media screen and (min-width: 768px) {
  .p-download__app::before {
    position: absolute;
    right: 0;
    bottom: 0;
    background: url(../img/common/bg/bg_rail.png) no-repeat 0 0;
    background-size: contain;
    width: 241px;
    height: 173px;
    content: "";
  }
}

.p-download__app-img {
  position: relative;
  padding: 2px;
}

@media screen and (min-width: 768px) {
  .p-download__app-img {
    width: 47%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-download__app-img {
    margin: 0 auto;
    width: 73.8%;
  }
}

.p-download__app-img::before {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 2px solid #d2d2d2;
  width: 100%;
  height: 100%;
  pointer-events: none;
  content: "";
}

.p-download__app-desc {
  margin-top: 2.7%;
}

@media screen and (min-width: 768px) {
  .p-download__app-desc {
    width: 49.4%;
  }
}

.p-download__app-ttl {
  margin-bottom: 23px;
}

@media screen and (max-width: 767.9px) {
  .p-download__app-ttl {
    font-size: 3.9vw;
  }
}

@media screen and (max-width: 767.9px) and (min-width: 493px) {
  .p-download__app-ttl {
    font-size: 19px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-download__app-ttl.-line2 {
    padding: 2.8% 11% 7.2%;
    font-size: 3.9vw;
  }
}

@media screen and (max-width: 767.9px) and (min-width: 493px) {
  .p-download__app-ttl.-line2 {
    padding: 12px 48px 32px;
    font-size: 19px;
  }
}

.p-download__app-ttl.-line2 span {
  padding: 4.2% 7% 0 8%;
}

.p-download__app-ttl span {
  padding: 7% 10% 0 8%;
  font-size: 23px;
  font-size: clamp(18.7px, 1.87vw, 24px);
}

.p-download__app-wrap {
  font-size: 18.5px;
  font-weight: 700;
  line-height: 1.55;
}

@media screen and (max-width: 767.9px) {
  .p-download__app-wrap {
    font-size: 13.5px;
    line-height: 1.7;
  }
}

@media screen and (min-width: 768px) {
  .p-download__app-wrap {
    padding: 0 0 0 8%;
  }
}

@media screen and (max-width: 767.9px) {
  .p-download__app-wrap {
    margin: 0 auto;
    width: 84%;
    line-height: 1.68;
  }
}

.p-download__app-text {
  margin: 23px 0 30px;
}

@media screen and (max-width: 767.9px) {
  .p-download__app-text {
    margin: 16px 0;
  }
}

.p-download__app-btn {
  margin-top: 42px;
  width: 288px;
}

@media screen and (max-width: 767.9px) {
  .p-download__app-btn {
    margin: 22px 0 0 -2%;
    width: 104%;
  }
}

.-app04 .p-download__app-btn {
  margin-top: 50px;
}

@media screen and (min-width: 768px) {
  .p-download__app-btn .c-btn__text {
    padding: 15px 14px;
  }
  .p-download__app-btn .c-btn__text::before {
    top: 19px;
  }
}

@media screen and (max-width: 767.9px) {
  .p-download__app-btn .c-btn__text::before {
    top: 11px;
  }
}

.p-download__app-btn .c-btn__text span::before {
  top: 5px;
}

.-app01 .p-download__app-btn .c-btn__text span::before {
  top: 4px;
}

.p-goods {
  margin-top: 38px;
}

@media screen and (max-width: 767.9px) {
  .p-goods {
    margin-top: 4%;
  }
}

.p-goods__outline {
  margin-bottom: 100px;
}

@media screen and (max-width: 767.9px) {
  .p-goods__outline {
    margin-bottom: 8%;
  }
}

.p-goods__outline .c-box {
  position: relative;
  padding-top: 5.75%;
  padding-bottom: 17.6%;
}

@media screen and (max-width: 767.9px) {
  .p-goods__outline .c-box {
    padding-bottom: 18.5%;
  }
}

.p-goods__outline .c-box::before {
  position: absolute;
  bottom: 0;
  left: 0;
  background: url(../img/goods/bg_chara.png) bottom 0 right 12.5% no-repeat;
  background-size: contain;
  padding-top: 17.6%;
  width: 100%;
  pointer-events: none;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-goods__outline .c-box::before {
    background-position: right 17% bottom 0;
    padding-top: 27.5%;
    padding-top: clamp(100px, 27.5%);
  }
}

.p-goods__block {
  position: relative;
  padding-bottom: 66px;
}

@media screen and (max-width: 767.9px) {
  .p-goods__block {
    padding-bottom: 10.7%;
  }
}

.p-goods__block + .p-goods__block {
  margin-top: 6px;
  padding-top: 40px;
}

@media screen and (max-width: 767.9px) {
  .p-goods__block + .p-goods__block {
    margin-top: 3px;
    padding-top: 5.6%;
  }
}

.p-goods__block + .p-goods__block::before {
  position: absolute;
  top: -6px;
  left: 0;
  background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 12px, transparent 12px, transparent 18px);
  width: 100%;
  height: 6px;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-goods__block + .p-goods__block::before {
    background-image: repeating-linear-gradient(90deg, #00A3E0, #00A3E0 6px, transparent 6px, transparent 9px);
  }
}

@media screen and (max-width: 767.9px) {
  .p-goods__block + .p-goods__block::before {
    height: 3px;
  }
}

.p-goods__block:last-child {
  padding-bottom: 42px;
}

@media screen and (max-width: 767.9px) {
  .p-goods__block:last-child {
    padding-bottom: 12.6%;
  }
}

.p-goods__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 40px auto 0;
  width: 95.5%;
}

@media screen and (max-width: 767.9px) {
  .p-goods__list {
    margin-top: 6%;
    width: 94.5%;
  }
}

@media screen and (min-width: 768px) {
  .p-goods__list-item {
    -webkit-transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
    transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
    width: 48.7%;
  }
  .p-goods__list-item:hover {
    -webkit-transform: translateY(-7px);
        -ms-transform: translateY(-7px);
            transform: translateY(-7px);
  }
  .p-goods__list-item:nth-child(2n) {
    margin-left: 2.6%;
  }
  .-row4 .p-goods__list-item:nth-child(2n) {
    margin-left: 0;
  }
  .p-goods__list-item:nth-child(n + 3) {
    margin-top: 20px;
  }
  .-row4 .p-goods__list-item:nth-child(n + 3) {
    margin-top: 0;
  }
}

@media screen and (max-width: 767.9px) {
  .p-goods__list-item {
    width: 100%;
  }
  .p-goods__list-item + .p-goods__list-item {
    margin-top: 4%;
  }
}

.-row4 .p-goods__list-item {
  margin: 0 2.13% 0 0;
  width: 23.4%;
}

@media screen and (max-width: 767.9px) {
  .-row4 .p-goods__list-item {
    margin: 0 4% 0 0;
    width: 48%;
  }
  .-row4 .p-goods__list-item:nth-of-type(even) {
    margin-right: 0;
  }
  .-row4 .p-goods__list-item:nth-of-type(n+3) {
    margin-top: 4%;
  }
}

@media screen and (min-width: 768px) {
  .-row4 .p-goods__list-item:nth-of-type(n+5) {
    margin-top: 20px;
  }
  .-row4 .p-goods__list-item:nth-of-type(4n) {
    margin-right: 0;
  }
}

.p-goods__list-item img {
  width: 100%;
}

.p-goods__link {
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #ffffff;
  width: 100%;
}

.p-goods__bnr {
  margin: 65px auto 0;
  width: 75%;
  max-width: 820px;
}

@media screen and (min-width: 768px) {
  .p-goods__bnr {
    -webkit-transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
    transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
  }
  .p-goods__bnr:hover {
    -webkit-transform: translateY(-11px);
        -ms-transform: translateY(-11px);
            transform: translateY(-11px);
  }
}

@media screen and (max-width: 767.9px) {
  .p-goods__bnr {
    margin: 6.7% auto 0;
    width: 94%;
  }
}

.p-goods__bnr a {
  display: block;
  width: 100%;
}

.p-event {
  margin-top: 64px;
}

@media screen and (max-width: 767.9px) {
  .p-event {
    margin-top: 4%;
  }
}

.p-event__outline {
  margin-bottom: 122px;
}

@media screen and (max-width: 767.9px) {
  .p-event__outline {
    margin-bottom: 11%;
  }
}

.p-event__outline .c-box {
  position: relative;
  padding-top: 6%;
  padding-bottom: 21.3%;
  overflow: hidden;
}

@media screen and (max-width: 767.9px) {
  .p-event__outline .c-box {
    padding-bottom: 24.2%;
  }
}

.p-event__outline .c-box::before {
  position: absolute;
  bottom: 0;
  left: 0;
  background: url(../img/event/chara_bg.png) bottom 0 left 16% no-repeat;
  background-size: contain;
  padding-top: 17.3%;
  width: 100%;
  pointer-events: none;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-event__outline .c-box::before {
    padding-top: 17.8%;
  }
}

@media screen and (min-width: 768px) {
  .p-event__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.p-event__list-item {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-event__list-item {
    -webkit-transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
    transition: 0.6s cubic-bezier(0, 1.52, 0.83, 1.29);
    width: 48%;
  }
  .p-event__list-item:nth-child(2n) {
    margin-left: 4%;
  }
  .p-event__list-item:nth-child(n + 3) {
    margin-top: 65px;
  }
  .p-event__list-item:hover {
    -webkit-transform: translateY(-8px);
        -ms-transform: translateY(-8px);
            transform: translateY(-8px);
  }
  .p-event__list-item:hover .p-event__cap {
    background-color: #3da647;
    color: #ffffff;
  }
  .p-event__list-item:hover .p-event__cap::before {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    opacity: 0;
  }
  .p-event__list-item:hover .p-event__cap::after {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
}

@media screen and (max-width: 767.9px) {
  .p-event__list-item + .p-event__list-item {
    margin-top: 7.5%;
  }
}

.p-event__cap {
  display: block;
  position: relative;
  -webkit-transition: 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
  border-radius: 100px;
  background-color: #ffffff;
  padding: 11px 50px;
  color: #00579a;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.3;
}

@media screen and (max-width: 767.9px) {
  .p-event__cap {
    padding: 2.1% 10%;
    font-size: 14px;
    font-size: clamp(12px, 3.7vw, 17px);
  }
}

@media screen and (max-width: 767.9px) and (min-width: 460px) {
  .p-event__cap {
    padding: 8.5px 40.5px;
  }
}

.p-event__cap::before, .p-event__cap::after {
  position: absolute;
  top: 0;
  left: 0;
  background: url(../img/common/icon/icon_arrow_event.png) right center no-repeat;
  background-size: 50%;
  width: 42px;
  height: 100%;
  content: "";
}

@media screen and (max-width: 767.9px) {
  .p-event__cap::before, .p-event__cap::after {
    left: 3%;
    margin-top: 2%;
    background-position: 0 0;
    background-size: contain;
    padding-top: 5.3%;
    width: 5.4%;
    max-width: 22px;
    height: auto;
  }
}

@media screen and (max-width: 767.9px) and (min-width: 460px) {
  .p-event__cap::before, .p-event__cap::after {
    margin-top: 8.1px;
    padding-top: 22px;
  }
}

.p-event__cap::after {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
  background-image: url(../img/common/icon/icon_link.svg);
}

.p-event__thumb {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 13px;
  border: 1px solid #ffffff;
}

@media screen and (max-width: 767.9px) {
  .p-event__thumb {
    margin: 3.8% auto 0;
    width: 95%;
  }
}

.p-event__thumb img {
  width: 100%;
}

.p-event__link {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
