@charset "UTF-8";
.header .band {
  background-color: #617cd8; }

@media (min-width: 768px) {
  .container {
    width: 930px;
    max-width: 930px; }

  main, footer, .header {
    position: relative; }

  .anchor_link {
    padding-bottom: 50px;
    margin-top: -50px; } }
@media (max-width: 767.98px) {
  main {
    position: relative; }

  .container {
    width: 100%; }

  .anchor_link {
    padding-bottom: 150px;
    margin-top: -150px; } }
.nami_top {
  -webkit-mask: var(--mask);
  mask: var(--mask); }

@media (min-width: 768px) {
  .nami_top {
    margin-top: -20px;
    --mask:
    radial-gradient(25.82px at 50% 35.7px,#000 99%,#0000 101%) calc(50% - 28px) 0/56px 100%,
    radial-gradient(25.82px at 50% -21.7px,#0000 99%,#000 101%) 50% 14px/56px 100% repeat-x; } }
@media (max-width: 767.98px) {
  .nami_top {
    margin-top: -30px;
    --mask:
    radial-gradient(31.36px at 50% 43.35px,#000 99%,#0000 101%) calc(50% - 34px) 0/68px 100%,
    radial-gradient(31.36px at 50% -26.35px,#0000 99%,#000 101%) 50% 17px/68px 100% repeat-x; } }
@property --timeX {
  syntax: "<number>";
  inherits: true;
  initial-value: 0; }
@property --timeY {
  syntax: "<number>";
  inherits: true;
  initial-value: 0; }
@property --dampingY {
  syntax: "<number>";
  inherits: true;
  initial-value: 0; }
.castle_main {
  background: url(../images/back.png) repeat left bottom;
  overflow: hidden;
  position: relative; }
  .castle_main > .container {
    position: relative;
    z-index: 10; }
    .castle_main > .container > .title {
      position: relative; }
      .castle_main > .container > .title > .waku {
        position: relative; }
        .castle_main > .container > .title > .waku > .back {
          position: relative;
          z-index: 1; }
        .castle_main > .container > .title > .waku > .waku {
          position: absolute;
          z-index: 4;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%; }
        .castle_main > .container > .title > .waku > .tsuya {
          position: absolute;
          z-index: 2;
          --v0x: 100;
          --v0y: 58.8;
          --g: 9.8;
          /* 重力加速度 */
          --dampingY: 1;
          translate: calc((var(--v0x) * var(--timeX) * var(--timeX) * 1px)) calc((var(--v0y) * var(--timeY) - 0.5 * var(--g) * pow(var(--timeY), 2)) * -0.5px * var(--dampingY));
          animation: castle_main_tsuya_animX 1.8s linear forwards, castle_main_tsuya_animY 0.6s linear 3; }
@keyframes castle_main_tsuya_animX {
  from {
    --timeX: 1;
    --dampingY: 1; }
  to {
    --timeX: 0;
    --dampingY: 0; } }
@keyframes castle_main_tsuya_animY {
  from {
    --timeY: 0; }
  to {
    --timeY: 12; } }
        .castle_main > .container > .title > .waku > .kira {
          position: absolute;
          z-index: 6; }
          .castle_main > .container > .title > .waku > .kira > img {
            position: absolute;
            display: block;
            opacity: 0; }
@keyframes castle_main_kira_twinkle {
  0%,100% {
    opacity: 0; }
  49% {
    opacity: 0; }
  50% {
    opacity: 1; } }
            .castle_main > .container > .title > .waku > .kira > img:nth-child(1) {
              animation: castle_main_kira_twinkle 2s 1.5s linear infinite; }
            .castle_main > .container > .title > .waku > .kira > img:nth-child(2) {
              animation: castle_main_kira_twinkle 2s 2.5s linear infinite; }
            .castle_main > .container > .title > .waku > .kira > img:nth-child(3) {
              animation: castle_main_kira_twinkle 2s 2.1s linear infinite; }
        .castle_main > .container > .title > .waku > h1 {
          position: absolute;
          z-index: 5; }
          .castle_main > .container > .title > .waku > h1 > img {
            display: block;
            margin: 0 auto;
            filter: drop-shadow(0px 0px 2px white) drop-shadow(0px 0px 3px white) drop-shadow(0px 0px 4px white); }
          .castle_main > .container > .title > .waku > h1 > .lighten {
            position: absolute;
            width: 100%;
            bottom: 0; }
            .castle_main > .container > .title > .waku > h1 > .lighten > img {
              mix-blend-mode: plus-lighter;
              clip-path: polygon(-4% 0%, 6% 0%, -10% 100%, 0% 100%);
              animation: castle_main_title_anim 4s linear infinite;
              filter: blur(5px); }
@keyframes castle_main_title_anim {
  0% {
    clip-path: polygon(-25% 0%, 5% 0%, -20% 100%, -40% 100%);
    opacity: 0; }
  6% {
    clip-path: polygon(50% 0%, 70% 0%, 45% 100%, 25% 100%);
    opacity: 1; }
  12%, 100% {
    clip-path: polygon(125% 0%, 145% 0%, 125% 100%, 105% 100%);
    opacity: 0; } }
      .castle_main > .container > .title > .name {
        color: white;
        background: #F76E86;
        background: linear-gradient(90deg, #f76e86 0%, #f8b7c5 100%);
        display: flex;
        align-items: center;
        margin: 0;
        position: absolute;
        font-weight: bold;
        z-index: 15; }
      .castle_main > .container > .title > .photo_deco, .castle_main > .container > .title > .deco01, .castle_main > .container > .title > .deco02 {
        position: absolute;
        z-index: 10; }
      .castle_main > .container > .title > .photo_deco {
        border-radius: 50%;
        overflow: hidden; }
        .castle_main > .container > .title > .photo_deco > img {
          width: 130%;
          height: 130%;
          object-fit: cover;
          object-position: center top; }
      .castle_main > .container > .title > .deco01 > .item {
        position: absolute; }
      .castle_main > .container > .title > .deco02 > .item > img {
        position: absolute; }
  .castle_main > .deco02 {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
    .castle_main > .deco02 > .mado {
      position: absolute;
      display: flex;
      justify-content: space-between; }
  @media (min-width: 768px) {
    .castle_main {
      padding: 30px 0 200px; }
      .castle_main > .container > .title {
        margin: 0 0 80px; }
        .castle_main > .container > .title > .waku > .tsuya {
          width: 246px;
          top: 153px;
          right: 120px; }
        .castle_main > .container > .title > .waku > .kira {
          width: 246px;
          top: 153px;
          right: 120px;
          height: 228px; }
          .castle_main > .container > .title > .waku > .kira > img:nth-child(1) {
            width: 18px;
            left: 1px;
            top: 53px; }
          .castle_main > .container > .title > .waku > .kira > img:nth-child(2) {
            width: 18px;
            right: 48px;
            top: 46px; }
          .castle_main > .container > .title > .waku > .kira > img:nth-child(3) {
            width: 30px;
            right: 27px;
            top: 17px; }
        .castle_main > .container > .title > .waku > h1 {
          width: 355px;
          left: 150px;
          top: 190px; }
          .castle_main > .container > .title > .waku > h1 > img.lead {
            width: 290px; }
        .castle_main > .container > .title > .name {
          width: 164px;
          height: 54px;
          font-size: 15px;
          bottom: -20px;
          right: 0;
          border-radius: 27px 0 0 27px;
          padding-left: 40px; }
        .castle_main > .container > .title > .photo_deco {
          width: 156px;
          height: 156px;
          left: 10px;
          top: -5px; }
        .castle_main > .container > .title > .deco01 {
          width: 259px;
          height: 124px;
          right: -40px;
          top: 30px; }
          .castle_main > .container > .title > .deco01 > .item {
            width: 66px;
            left: 90px;
            bottom: 35px; }
        .castle_main > .container > .title > .deco02 {
          width: 366px;
          height: 176px;
          left: -30px;
          bottom: -100px; }
          .castle_main > .container > .title > .deco02 > .item > img:nth-child(1) {
            width: 69px;
            left: 52px;
            bottom: 51px; }
          .castle_main > .container > .title > .deco02 > .item > img:nth-child(2) {
            width: 81px;
            left: 135px;
            bottom: 40px; }
      .castle_main > .deco {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%; }
        .castle_main > .deco > .mado {
          position: absolute;
          display: flex;
          flex-direction: column;
          justify-content: center;
          height: 100%; }
          .castle_main > .deco > .mado.right {
            left: calc(50% + 540px); }
          .castle_main > .deco > .mado.left {
            right: calc(50% + 540px);
            transform: scale(-1, 1); }
          .castle_main > .deco > .mado > img {
            width: 72px;
            display: block;
            margin: 0 auto; }
          .castle_main > .deco > .mado > div {
            width: 142px;
            position: relative;
            margin: 200px auto; }
            .castle_main > .deco > .mado > div > img:nth-child(2) {
              width: 80px;
              position: absolute;
              left: 24px;
              top: 34px; }
      .castle_main > .deco02 > .mado {
        width: 98px; }
        .castle_main > .deco02 > .mado.right {
          left: calc(50% + 352px); }
        .castle_main > .deco02 > .mado.left {
          right: calc(50% + 352px); }
        .castle_main > .deco02 > .mado.top {
          top: 593px; }
        .castle_main > .deco02 > .mado.bottom {
          top: 865px; }
        .castle_main > .deco02 > .mado > img {
          width: 35px; } }
  @media (max-width: 767.98px) {
    .castle_main {
      padding: 15px 10px 150px; }
      .castle_main::before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        background: #000000;
        background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, black 100%);
        mix-blend-mode: overlay; }
      .castle_main > .container > .title {
        margin: 0 0 60px; }
        .castle_main > .container > .title > .waku {
          max-width: 325px;
          margin: 0 auto; }
          .castle_main > .container > .title > .waku > .tsuya {
            width: 63%;
            bottom: 14%;
            right: calc(50% - 33%); }
          .castle_main > .container > .title > .waku > .kira {
            width: 100%;
            bottom: 0%;
            right: 0;
            height: 100%; }
            .castle_main > .container > .title > .waku > .kira > img:nth-child(1) {
              width: 4.6%;
              left: 21%;
              bottom: 42%; }
            .castle_main > .container > .title > .waku > .kira > img:nth-child(2) {
              width: 4.6%;
              right: 28%;
              bottom: 44%; }
            .castle_main > .container > .title > .waku > .kira > img:nth-child(3) {
              width: 7.7%;
              right: 22%;
              bottom: 47%; }
          .castle_main > .container > .title > .waku > h1 {
            width: 100%;
            left: 0;
            top: 20%; }
            .castle_main > .container > .title > .waku > h1 > img {
              width: 89.23%; }
              .castle_main > .container > .title > .waku > h1 > img.lead {
                width: 73.84%; }
            .castle_main > .container > .title > .waku > h1 > .lighten > img {
              width: 89.23%;
              margin-left: auto;
              margin-right: auto;
              display: block; }
        .castle_main > .container > .title > .name {
          width: calc(100px + 50vw - 162.5px);
          height: 44px;
          border-radius: 22px 0 0 22px;
          font-size: 13px;
          bottom: 25px;
          left: calc(50% + 64px);
          padding-left: 30px; }
        .castle_main > .container > .title > .photo_deco {
          width: 92px;
          height: 92px;
          right: calc(50% + 82px);
          top: -10px; }
        .castle_main > .container > .title > .deco01 {
          width: 261px;
          height: 125.5px;
          left: calc(50% + 41px);
          top: -15px; }
          .castle_main > .container > .title > .deco01 > .item {
            width: 48px;
            left: 40px;
            bottom: 32px; }
        .castle_main > .container > .title > .deco02 {
          width: 261px;
          height: 125.5px;
          right: calc(50% - 41px);
          bottom: -5px; }
          .castle_main > .container > .title > .deco02 > .item > img:nth-child(1) {
            width: 44.5px;
            right: 162px;
            bottom: 39px; }
          .castle_main > .container > .title > .deco02 > .item > img:nth-child(2) {
            width: 58px;
            right: 97px;
            bottom: 30px; }
      .castle_main > .deco {
        display: none; }
      .castle_main > .deco02 > .mado {
        width: 100px; }
        .castle_main > .deco02 > .mado.right {
          left: calc(50% + 114px); }
        .castle_main > .deco02 > .mado.left {
          right: calc(50% + 114px); }
        .castle_main > .deco02 > .mado.top {
          top: 515px; }
        .castle_main > .deco02 > .mado.bottom {
          top: 960px; }
        .castle_main > .deco02 > .mado > img {
          width: 36px; } }
  @media (max-width: 359.98px) {
    .castle_main > .container > .title > .name {
      font-size: 11px;
      padding-left: 16px; } }

.tokuten {
  position: relative; }
  .tokuten > .back {
    position: relative; }
  .tokuten > dl {
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0; }
    .tokuten > dl > dt {
      position: absolute; }
    .tokuten > dl > dd > .gentei {
      display: flex;
      justify-content: center;
      letter-spacing: .04em;
      padding-left: .04em;
      margin: 0 auto; }
      .tokuten > dl > dd > .gentei > strong {
        background-color: #fffac8;
        color: #617cd8;
        font-weight: bold;
        display: flex;
        justify-content: center;
        align-items: center; }
    .tokuten > dl > dd > .text {
      color: #617cd8;
      font-weight: bold;
      letter-spacing: .04em;
      padding-left: .04em;
      text-align: center; }
      .tokuten > dl > dd > .text > strong {
        color: #f76e86; }
    .tokuten > dl > dd > .item {
      position: relative; }
      .tokuten > dl > dd > .item > .sp {
        margin: 0 auto;
        position: relative;
        z-index: 2; }
        .tokuten > dl > dd > .item > .sp::after {
          content: "";
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          background-image: url(../images/tokuten/sp-frame.png);
          background-size: cover;
          mix-blend-mode: plus-lighter;
          animation: tokuten_item_frame_anim 2s linear infinite; }
@keyframes tokuten_item_frame_anim {
  0% {
    clip-path: polygon(0 0, 20% 0, 100% 100%, 80% 100%);
    opacity: 0; }
  10% {
    clip-path: polygon(100% 0, 120% 0%, 0% 120%, 0% 100%);
    opacity: 1; }
  20%,100% {
    clip-path: polygon(100% 80%, 100% 100%, 0% 20%, 0% 0%);
    opacity: 0; } }
      .tokuten > dl > dd > .item > .deco_left, .tokuten > dl > dd > .item > .deco_right {
        position: absolute; }
        .tokuten > dl > dd > .item > .deco_left > .item > img, .tokuten > dl > dd > .item > .deco_right > .item > img {
          position: absolute; }
      .tokuten > dl > dd > .item > .deco_right > img {
        transform: scale(-1, 1); }
  .tokuten > .all_item_btn {
    position: absolute;
    width: 100%;
    margin: 0;
    background-color: white;
    z-index: 10; }
    .tokuten > .all_item_btn > a {
      border: 1px solid #617cd8;
      background-color: white;
      color: #617cd8;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      height: 100%;
      box-shadow: 0 0 10px #617cd8;
      overflow: hidden;
      position: relative;
      background-image: linear-gradient(-35deg, transparent 0%, rgba(241, 233, 161, 0.33) 10%, transparent 20%);
      background-size: 300%;
      background-repeat: no-repeat;
      animation: all_item_btn_sparkle 3s infinite linear; }
@keyframes all_item_btn_sparkle {
  0% {
    background-position: 200% center; }
  50%,100% {
    background-position: -200% center; } }
  @media (min-width: 768px) {
    .tokuten {
      width: 600px;
      margin: 0 auto; }
      .tokuten > dl > dt {
        width: 125px;
        left: calc(50% - 62.5px);
        top: -56px; }
      .tokuten > dl > dd > .gentei {
        padding: 70px 0 15px;
        font-size: 18px; }
        .tokuten > dl > dd > .gentei > strong {
          margin: 0 22px;
          width: 114px;
          height: 32px; }
      .tokuten > dl > dd > .text {
        font-size: 15px;
        margin: 0 0 1em; }
      .tokuten > dl > dd > .item > .sp {
        width: 160px; }
      .tokuten > dl > dd > .item > .deco_left, .tokuten > dl > dd > .item > .deco_right {
        width: 221px;
        height: 193px;
        top: 32px; }
      .tokuten > dl > dd > .item > .deco_left {
        right: calc(50% + 124px); }
        .tokuten > dl > dd > .item > .deco_left > .item > img:nth-child(1) {
          left: 15px;
          width: 115px;
          top: -31px; }
        .tokuten > dl > dd > .item > .deco_left > .item > img:nth-child(2) {
          left: 86px;
          width: 29px;
          top: 95px; }
        .tokuten > dl > dd > .item > .deco_left > .item > img:nth-child(3) {
          left: 126px;
          width: 64px;
          top: 67px; }
      .tokuten > dl > dd > .item > .deco_right {
        left: calc(50% + 124px); }
        .tokuten > dl > dd > .item > .deco_right > .item > img:nth-child(1) {
          left: 113px;
          width: 66px;
          top: -21px; }
        .tokuten > dl > dd > .item > .deco_right > .item > img:nth-child(2) {
          left: 32px;
          width: 93px;
          top: 74px; }
      .tokuten > .all_item_btn {
        width: 238px;
        height: 36px;
        left: calc(50% - 119px);
        bottom: -18px;
        border-radius: 18px; }
        .tokuten > .all_item_btn > a {
          border-radius: 18px;
          font-size: 15px; } }
  @media (max-width: 767.98px) {
    .tokuten {
      max-width: 320px;
      margin-left: auto;
      margin-right: auto; }
      .tokuten > dl > dt {
        width: 89px;
        left: calc(50% - 44.5px);
        top: -43px; }
      .tokuten > dl > dd > .gentei {
        padding: 48px 0 15px;
        font-size: 13px; }
        .tokuten > dl > dd > .gentei > strong {
          margin: 0 11px;
          width: 81px;
          height: 22px; }
      .tokuten > dl > dd > .text {
        font-size: 15px;
        margin: 0 0 1em; }
      .tokuten > dl > dd > .item > .sp {
        width: 144px; }
      .tokuten > dl > dd > .item > .deco_left, .tokuten > dl > dd > .item > .deco_right {
        width: 170px;
        height: 148px;
        top: 17px; }
      .tokuten > dl > dd > .item > .deco_left {
        right: calc(50% + 56px); }
        .tokuten > dl > dd > .item > .deco_left > .item > img:nth-child(1) {
          left: 27px;
          width: 88px;
          top: -20px; }
        .tokuten > dl > dd > .item > .deco_left > .item > img:nth-child(2) {
          left: 61px;
          width: 22px;
          bottom: -12px; }
        .tokuten > dl > dd > .item > .deco_left > .item > img:nth-child(3) {
          left: 92px;
          width: 49px;
          bottom: 2px; }
      .tokuten > dl > dd > .item > .deco_right {
        left: calc(50% + 56px); }
        .tokuten > dl > dd > .item > .deco_right > .item > img:nth-child(1) {
          left: 59px;
          width: 48px;
          top: -14px; }
        .tokuten > dl > dd > .item > .deco_right > .item > img:nth-child(2) {
          left: 29px;
          width: 72px;
          top: 78px; }
      .tokuten > .all_item_btn {
        width: 169px;
        height: 26px;
        left: calc(50% - 84.5px);
        bottom: -13px;
        border-radius: 13px; }
        .tokuten > .all_item_btn > a {
          border-radius: 13px;
          font-size: 13px; } }

@keyframes rope {
  0% {
    bottom: 100%; }
  10% {
    bottom: 0%; }
  11% {
    bottom: 3%; }
  12% {
    bottom: 0%; }
  48% {
    bottom: 0%; }
  49% {
    bottom: 1.5%; }
  50% {
    bottom: 0%; }
  60% {
    bottom: 100%; }
  100% {
    bottom: 100%; } }
.dresser {
  position: relative;
  z-index: 10; }
  .dresser > .back {
    display: block;
    position: absolute; }
  .dresser > .container {
    position: relative;
    z-index: 10; }
    .dresser > .container > .lead {
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center; }
      .dresser > .container > .lead > h2 {
        width: 246px; }
      .dresser > .container > .lead > p {
        color: #617cd8;
        font-weight: bold;
        line-height: 1.666em;
        font-size: 15px; }
      .dresser > .container > .lead > h2, .dresser > .container > .lead > p {
        transition: transform 2s ease-out, opacity 1s ease-out;
        transform: translateY(-20px);
        opacity: 0; }
        .dresser > .container > .lead > h2.inview, .dresser > .container > .lead > p.inview {
          transform: translateY(0);
          opacity: 1; }
      .dresser > .container > .lead > p {
        transition-delay: .5s; }
      .dresser > .container > .lead > .tori {
        position: relative; }
        .dresser > .container > .lead > .tori > .gif.feather {
          position: absolute;
          top: 0;
          z-index: 2; }
        .dresser > .container > .lead > .tori > p {
          background-repeat: no-repeat;
          background-position: center top;
          background-size: contain;
          font-weight: bold;
          color: #617cd8;
          display: flex;
          align-items: center;
          justify-content: center;
          line-height: 1.8em;
          position: relative; }
          .dresser > .container > .lead > .tori > p strong {
            color: #f76e86; }
    .dresser > .container > .link {
      position: relative; }
      .dresser > .container > .link > .sp {
        display: block;
        margin: 0 auto; }
      .dresser > .container > .link > .kagu {
        position: relative; }
        .dresser > .container > .link > .kagu > .back {
          position: relative;
          z-index: 5; }
        .dresser > .container > .link > .kagu > figure {
          position: absolute;
          z-index: 10; }
          .dresser > .container > .link > .kagu > figure > figcaption {
            position: absolute; }
            .dresser > .container > .link > .kagu > figure > figcaption > button {
              background-color: #fff600;
              color: #617cd8;
              display: flex;
              justify-content: center;
              align-items: center;
              font-weight: bold;
              padding: 0 .75em;
              position: relative; }
              .dresser > .container > .link > .kagu > figure > figcaption > button::after {
                content: "";
                background: url(../images/dresser/arrow.svg) no-repeat center;
                background-size: contain;
                position: absolute; }
              .dresser > .container > .link > .kagu > figure > figcaption > button:focus {
                outline: none; }
        .dresser > .container > .link > .kagu.type01 {
          position: absolute; }
          .dresser > .container > .link > .kagu.type01 > figure > .img {
            width: 100%;
            height: 100%;
            position: relative;
            overflow: hidden; }
        .dresser > .container > .link > .kagu.item01 > figure > .img {
          background: #FFFFE7;
          background: linear-gradient(0deg, #ffffe7 0%, white 100%); }
          .dresser > .container > .link > .kagu.item01 > figure > .img > img {
            width: 96%;
            height: 96%;
            object-fit: contain;
            object-position: left center; }
        .dresser > .container > .link > .kagu.item02 > figure > .img > img {
          width: 140%;
          height: 140%;
          object-fit: cover;
          object-position: center top; }
        .dresser > .container > .link > .kagu.item04 {
          position: absolute; }
          .dresser > .container > .link > .kagu.item04 > .cup {
            position: absolute;
            display: block; }
        .dresser > .container > .link > .kagu.item05 {
          position: absolute; }
      .dresser > .container > .link > .tori {
        display: block;
        margin: 0 auto; }
  .dresser > .bottom_back {
    position: absolute;
    width: 100%;
    background: #FFFAC8;
    background: linear-gradient(0deg, #fffac8 0%, white 100%);
    overflow: hidden; }
  .dresser > .bottom {
    position: relative; }
    .dresser > .bottom::before, .dresser > .bottom::after {
      content: "";
      position: absolute;
      display: block;
      width: 50vw;
      bottom: 0;
      height: 100%;
      background-color: #fffac8; }
    .dresser > .bottom > picture {
      display: block;
      margin: 0 auto; }
  .dresser > .warukeru_run {
    position: absolute; }
  .dresser .warukeru_rope {
    position: absolute;
    overflow: hidden; }
    .dresser .warukeru_rope > .img {
      position: absolute;
      right: 0;
      bottom: 0;
      width: 66%;
      animation: rope 14s linear both infinite;
      animation-delay: .1s; }
      .dresser .warukeru_rope > .img > img {
        display: block; }
  @media (min-width: 768px) {
    .dresser > .back {
      width: 1000px;
      left: calc(50% - 500px);
      top: -110px; }
    .dresser > .container > .lead {
      flex-wrap: wrap; }
      .dresser > .container > .lead > h2 {
        margin-right: 18px; }
      .dresser > .container > .lead > .tori {
        margin-top: 30px; }
        .dresser > .container > .lead > .tori > img {
          width: 128px;
          margin-bottom: -21px; }
        .dresser > .container > .lead > .tori > .gif {
          width: 180px; }
          .dresser > .container > .lead > .tori > .gif.feather {
            left: calc(50% - 90px); }
        .dresser > .container > .lead > .tori > p {
          background-image: url(../images/dresser/gaku/pc.svg);
          width: 415px;
          height: 155px;
          font-size: 16px; }
    .dresser > .container > .link {
      margin: 40px auto 50px; }
      .dresser > .container > .link > .sp {
        width: 138px; }
      .dresser > .container > .link > .kagu > figure > figcaption > button {
        height: 40px;
        min-width: 144px;
        border-radius: 20px;
        font-size: 15px; }
        .dresser > .container > .link > .kagu > figure > figcaption > button::after {
          width: 18px;
          height: 18px;
          bottom: -9px;
          left: calc(50% - 9px); }
      .dresser > .container > .link > .kagu.type01 {
        width: 171px;
        top: 72px; }
        .dresser > .container > .link > .kagu.type01 > figure {
          left: 24px;
          top: 56px;
          width: 120px;
          height: 120px; }
      .dresser > .container > .link > .kagu.item01 {
        right: calc(50% + 230px); }
        .dresser > .container > .link > .kagu.item01 > figure > figcaption {
          left: calc(100% - 22px);
          top: calc(100% + 30px); }
      .dresser > .container > .link > .kagu.item02 {
        left: calc(50% + 230px); }
        .dresser > .container > .link > .kagu.item02 > figure > figcaption {
          left: 40px;
          top: calc(100% + 30px);
          width: 180px; }
      .dresser > .container > .link > .kagu.item03 {
        width: 357px;
        margin: 80px auto 48px; }
        .dresser > .container > .link > .kagu.item03 > figure {
          width: 37px;
          left: 145px;
          top: 15px; }
          .dresser > .container > .link > .kagu.item03 > figure > figcaption {
            left: 40px;
            bottom: -10px; }
      .dresser > .container > .link > .kagu.item04 {
        width: 244px;
        right: calc(50% + 171px);
        top: 547px; }
        .dresser > .container > .link > .kagu.item04 > .no1 {
          width: 67px;
          right: 29px;
          bottom: 84px; }
          .dresser > .container > .link > .kagu.item04 > .no1 > figcaption {
            left: 82px;
            top: 30px; }
        .dresser > .container > .link > .kagu.item04 > .no2 {
          width: 75px;
          left: 23px;
          bottom: 78px; }
          .dresser > .container > .link > .kagu.item04 > .no2 > figcaption {
            left: -57px;
            top: -50px;
            width: 160px; }
        .dresser > .container > .link > .kagu.item04 > .cup {
          width: 35px;
          left: 102px;
          bottom: 84px; }
      .dresser > .container > .link > .kagu.item05 {
        width: 193px;
        left: calc(50% + 234px);
        top: 379px; }
        .dresser > .container > .link > .kagu.item05 > figure {
          width: 71px;
          left: 55px;
          top: 77px; }
          .dresser > .container > .link > .kagu.item05 > figure > figcaption {
            right: 86px;
            top: 103px; }
      .dresser > .container > .link > .tori {
        width: 181px; }
      .dresser > .container > .link > .mado {
        position: absolute;
        height: 135px;
        width: 378px;
        display: flex;
        justify-content: space-between;
        left: calc(50% - 189px);
        top: 60px; }
        .dresser > .container > .link > .mado > img {
          width: auto;
          height: 135px; }
    .dresser > .bottom_back {
      bottom: 119px;
      height: 670px; }
    .dresser > .bottom::before {
      right: calc(50% + 499px); }
    .dresser > .bottom::after {
      left: calc(50% + 499px); }
    .dresser > .bottom > picture {
      width: 1000px; }
    .dresser > .deco {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%; }
      .dresser > .deco > .mado {
        position: absolute;
        display: flex;
        flex-direction: column;
        justify-content: center;
        height: 100%;
        padding-bottom: 100px; }
        .dresser > .deco > .mado.right {
          left: calc(50% + 547px); }
        .dresser > .deco > .mado.left {
          right: calc(50% + 547px);
          transform: scale(-1, 1); }
        .dresser > .deco > .mado > img {
          display: block;
          margin: 0 auto; }
          .dresser > .deco > .mado > img:nth-child(n+2) {
            margin-top: 90px; }
          .dresser > .deco > .mado > img:nth-child(odd) {
            width: 47px; }
          .dresser > .deco > .mado > img:nth-child(2) {
            width: 122px;
            transform: rotate(19.56deg); }
          .dresser > .deco > .mado > img:nth-child(4) {
            width: 40px; }
          .dresser > .deco > .mado > img:nth-child(6) {
            width: 104px;
            transform: rotate(-20.34deg); }
          .dresser > .deco > .mado > img:nth-child(1), .dresser > .deco > .mado > img:nth-child(5) {
            transform: scale(-1, 1); }
    .dresser > .warukeru_run {
      width: 115px;
      bottom: 30px;
      left: calc(50% + 370px); }
    .dresser .warukeru_rope {
      width: 132px;
      height: 265px;
      left: 30px;
      top: 215px; } }
  @media (max-width: 767.98px) {
    .dresser > .back {
      width: 464px;
      left: calc(50% - 232px);
      top: -113px; }
    .dresser > .container > .lead {
      flex-direction: column; }
      .dresser > .container > .lead > p {
        margin: 30px auto; }
      .dresser > .container > .lead > .tori > img {
        width: 128px;
        margin-bottom: -22px; }
      .dresser > .container > .lead > .tori > .gif {
        width: 180px; }
        .dresser > .container > .lead > .tori > .gif.feather {
          left: calc(50% - 90px); }
      .dresser > .container > .lead > .tori > p {
        background-image: url(../images/dresser/gaku/sp.svg);
        width: 298px;
        height: 198px;
        font-size: 15px; }
    .dresser > .container > .link {
      margin: 25px auto 5px; }
      .dresser > .container > .link > .sp {
        width: 115px; }
      .dresser > .container > .link > .kagu > figure > figcaption > button {
        height: 34px;
        min-width: 120px;
        border-radius: 17px;
        font-size: 13px; }
        .dresser > .container > .link > .kagu > figure > figcaption > button::after {
          width: 14px;
          height: 14px;
          bottom: -7px;
          left: calc(50% - 7px); }
      .dresser > .container > .link > .kagu.type01 {
        width: 142px;
        top: 26px; }
        .dresser > .container > .link > .kagu.type01 > figure {
          left: 20px;
          top: 45px;
          width: 100px;
          height: 100px; }
      .dresser > .container > .link > .kagu.item01 {
        right: calc(50% + 67px); }
        .dresser > .container > .link > .kagu.item01 > figure > figcaption {
          right: -33px;
          bottom: -60px; }
      .dresser > .container > .link > .kagu.item02 {
        left: calc(50% + 67px); }
        .dresser > .container > .link > .kagu.item02 > figure > figcaption {
          left: -60px;
          top: 94px;
          width: 160px; }
      .dresser > .container > .link > .kagu.item03 {
        width: 297px;
        margin: 59px auto 142px;
        transform: translateX(-15px); }
        .dresser > .container > .link > .kagu.item03 > figure {
          width: 32px;
          left: 120px;
          top: 12px; }
          .dresser > .container > .link > .kagu.item03 > figure > figcaption {
            left: 36px;
            top: 88px; }
      .dresser > .container > .link > .kagu.item04 {
        width: 204px;
        right: calc(50% - 42px);
        top: 437.5px; }
        .dresser > .container > .link > .kagu.item04 > .no1 {
          width: 56px;
          right: 24px;
          bottom: 70px; }
          .dresser > .container > .link > .kagu.item04 > .no1 > figcaption {
            left: -27px;
            top: 105px; }
        .dresser > .container > .link > .kagu.item04 > .no2 {
          width: 63px;
          left: 19px;
          bottom: 65px; }
          .dresser > .container > .link > .kagu.item04 > .no2 > figcaption {
            left: -33px;
            top: -45px;
            width: 140px; }
        .dresser > .container > .link > .kagu.item04 > .cup {
          width: 29px;
          left: 87px;
          bottom: 70px; }
      .dresser > .container > .link > .kagu.item05 {
        width: 160px;
        left: calc(50% + 35px);
        top: 379px; }
        .dresser > .container > .link > .kagu.item05 > figure {
          width: 60px;
          left: 50px;
          top: 65px; }
          .dresser > .container > .link > .kagu.item05 > figure > figcaption {
            left: -29px;
            top: 125px; }
      .dresser > .container > .link > .tori {
        width: 150px;
        margin-right: calc(50% + 13px); }
      .dresser > .container > .link > .mado {
        display: none; }
    .dresser > .bottom_back {
      bottom: 118px;
      height: 590px; }
    .dresser > .bottom::before {
      right: calc(50% + 232px); }
    .dresser > .bottom::after {
      left: calc(50% + 232px); }
    .dresser > .bottom > picture {
      width: 465px;
      margin-left: 50%;
      transform: translateX(-50%); }
    .dresser > .deco {
      display: none; }
    .dresser > .warukeru_run {
      width: 85px;
      bottom: 30px;
      left: calc(50% + 115px); }
    .dresser .warukeru_rope {
      width: 110px;
      height: 210px;
      left: 25px;
      top: 196px; } }

.castle_bottom {
  background: url(../images/back.png) repeat left bottom;
  position: relative; }
  .castle_bottom > .container {
    position: relative;
    z-index: 10; }
  @media (min-width: 768px) {
    .castle_bottom {
      margin-top: -120px;
      padding: 100px 0 80px; }
      .castle_bottom > .deco {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        padding-top: 30px; }
        .castle_bottom > .deco > .mado {
          position: absolute;
          display: flex;
          flex-direction: column;
          justify-content: center;
          height: 100%;
          width: 142px; }
          .castle_bottom > .deco > .mado.right {
            left: calc(50% + 540px); }
          .castle_bottom > .deco > .mado.left {
            right: calc(50% + 540px);
            transform: scale(-1, 1); }
          .castle_bottom > .deco > .mado > img {
            width: 72px;
            display: block;
            margin: 0 auto; }
      .castle_bottom > .deco02 {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%; }
        .castle_bottom > .deco02 > .mado {
          position: absolute;
          display: flex;
          justify-content: space-between;
          width: 98px; }
          .castle_bottom > .deco02 > .mado.right {
            left: calc(50% + 352px); }
          .castle_bottom > .deco02 > .mado.left {
            right: calc(50% + 352px); }
          .castle_bottom > .deco02 > .mado.top {
            top: 165px; }
          .castle_bottom > .deco02 > .mado.bottom {
            top: 440px; }
          .castle_bottom > .deco02 > .mado > img {
            width: 35px; } }
  @media (max-width: 767.98px) {
    .castle_bottom {
      margin-top: -120px;
      padding: 90px 10px 70px; }
      .castle_bottom::before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        background: #000000;
        background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, black 100%);
        mix-blend-mode: overlay; }
      .castle_bottom > .deco, .castle_bottom > .deco02 {
        display: none; } }

.modal-backdrop {
  background-color: #617cd8; }

.shiro_modal > .modal-dialog > .modal-content {
  border-radius: 0;
  border: none;
  background-color: transparent;
  /*&::before{ content: ""; left: 0; top: 0; position: absolute; width: 100%; height: calc(100% - 10px); display: block; background-color: white;}*/ }
  .shiro_modal > .modal-dialog > .modal-content > .modal-body {
    padding: 0; }
    .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header {
      background: url(../images/back.png) repeat left bottom;
      overflow: hidden;
      position: relative;
      text-align: center; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .tori {
        display: block;
        margin: 0 auto 15px;
        position: relative;
        z-index: 2; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > p {
        color: #617cd8;
        line-height: 1.6em;
        position: relative;
        z-index: 2; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > p > strong {
          background-color: white; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 1; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div {
          background: url(../images/item/kira.svg) no-repeat center;
          background-size: contain;
          position: absolute; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(2) {
            transform: scale(-1, 1); }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(3) {
            transform: scale(1, -1); }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(4) {
            transform: scale(-1, -1); }
    .shiro_modal > .modal-dialog > .modal-content > .modal-body > .back {
      width: 100%;
      display: block;
      position: relative; }
    .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body {
      position: relative;
      background-color: white; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_img {
        position: relative; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_img > img {
          max-width: 100%;
          max-height: 100%;
          width: auto;
          height: auto;
          display: block;
          margin: 0 auto; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_img > .sub {
          border: 2px solid white;
          border-radius: 50%;
          overflow: hidden;
          position: absolute; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_img > .sub > img {
            display: block; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info {
        text-align: center; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail {
          display: flex;
          flex-direction: column;
          align-items: center; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > p {
            color: #617cd8;
            line-height: 2em; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .name {
            line-height: 1.4em;
            margin-bottom: .3em; }
            .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .name + .capa {
              margin-top: -.65em; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .ct {
            border: #617cd8 solid 1px;
            padding: 0 1.5em;
            line-height: 1.2em; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .price {
            display: flex;
            align-items: baseline; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_text {
        color: #666666;
        line-height: 1.9em;
        font-weight: normal; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_text > strong {
          color: #f76e86;
          font-weight: normal; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_text sup {
          font-size: 65%;
          vertical-align: baseline; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .m_btn {
        display: flex;
        align-items: center;
        justify-content: center; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .m_btn > a {
          display: flex;
          align-items: center;
          justify-content: center;
          line-height: 1em;
          color: white;
          background: url(../images/item/btn_back.png) no-repeat center/600px auto;
          box-shadow: 0 4px 4px rgba(0, 78, 162, 0.4); }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .m_btn > a::after {
            content: "";
            display: block;
            width: 1em;
            height: 1em;
            background: url(../images/item/btn_arrow.svg) no-repeat center;
            background-size: contain;
            margin-left: .25em; }
    .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_footer {
      background-color: #fffac8;
      position: relative; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_footer > button.close {
        background-color: #fffac8;
        display: flex;
        justify-content: center;
        align-items: center;
        color: #617cd8;
        position: absolute;
        border-radius: 50%;
        opacity: 1;
        font-weight: 100; }
@media (min-width: 768px) {
  .shiro_modal > .modal-dialog {
    width: 900px;
    max-width: none; }
    .shiro_modal > .modal-dialog > .modal-content > .modal-body {
      padding-bottom: 9px; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header {
        padding: 30px 30px 80px;
        margin-bottom: -60px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header .tori {
          width: 90px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > p {
          font-size: 25px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(1), .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(2) {
          width: 40px;
          height: 52px;
          top: 35px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(1) {
          right: calc(50% + 100px); }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(2) {
          left: calc(50% + 100px); }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_img {
          width: 300px;
          height: 300px; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_img > .sub {
            width: 126px;
            height: 126px;
            right: -51px;
            top: -26px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .name {
          font-size: 20px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .ct {
          font-size: 12px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .capa {
          font-size: 13px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .price {
          font-size: 25px; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .price > small {
            font-size: 12px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail + .detail {
          margin-top: 20px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_text {
          font-size: 15px;
          margin: 50px auto;
          padding: 0 50px;
          text-align: center; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_text > .kometext {
            font-size: 13px;
            line-height: 1.6em; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .m_btn {
          padding-bottom: 40px; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .m_btn > a {
            width: 300px;
            height: 70px;
            border-radius: 35px;
            font-size: 18px; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_footer {
        height: 30px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_footer > button.close {
          width: 48px;
          height: 48px;
          left: calc(50% - 24px);
          top: -9px;
          font-size: 40px; } }
@media (max-width: 767.98px) {
  .shiro_modal > .modal-dialog > .modal-content > .modal-body {
    padding-bottom: 9px; }
    .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header {
      padding: 30px 10px 40%;
      margin-bottom: -35%; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header::before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        background: #000000;
        background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, black 100%);
        mix-blend-mode: overlay; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header .tori {
        width: 90px; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > p {
        font-size: 25px; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div {
        width: 40px;
        height: 52px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(1), .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(2) {
          top: 15px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(3), .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(4) {
          bottom: 20%; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(1), .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(3) {
          right: calc(50% + 100px); }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(2), .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > .kira > div:nth-child(4) {
          left: calc(50% + 100px); }
    .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_img {
      width: 300px;
      height: 300px;
      margin: 0 auto; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_img > .sub {
        width: 126px;
        height: 126px;
        right: -18px;
        top: -55px; }
    .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info {
      padding: 0 20px; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail {
        margin-top: 10px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > p {
          text-align: center; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .name {
          font-size: 20px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .ct {
          font-size: 12px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .capa {
          font-size: 13px; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .price {
          font-size: 25px; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail > .price > small {
            font-size: 12px; }
    .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_text {
      font-size: 15px;
      margin: 35px auto;
      padding: 0 20px; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_text > .kometext {
        display: block;
        font-size: 13px;
        line-height: 1.6em; }
        .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_text > .kometext > span {
          display: block;
          padding-left: 2em;
          text-indent: -2em; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_text > .kometext > span:nth-child(n+2) {
            margin-top: .25em; }
          .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_text > .kometext > span.kome01 {
            padding-left: 1em;
            text-indent: -1em; }
    .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .m_btn {
      padding-bottom: 30px; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .m_btn > a {
        max-width: 300px;
        width: 100%;
        height: 70px;
        border-radius: 35px;
        font-size: 18px; }
    .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_footer {
      height: 30px; }
      .shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_footer > button.close {
        width: 48px;
        height: 48px;
        left: calc(50% - 24px);
        top: -9px;
        font-size: 40px; } }

@media (min-width: 768px) {
  #item_modal_01.shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail {
    margin-left: 40px; }

  #item_modal_02.shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_info > .detail {
    margin-left: 60px; }

  #item_modal_05.shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_img {
    height: 220px; } }
@media (max-width: 767.98px) {
  #item_modal_02.shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_header > p {
    font-size: 23px; }

  #item_modal_05.shiro_modal > .modal-dialog > .modal-content > .modal-body > .m_body > .item_img {
    height: 220px;
    width: 188px; } }
.etc_container {
  background-color: #8675df;
  z-index: 1;
  position: relative; }
  .etc_container > .container > .etc_div {
    display: flex;
    align-items: center; }
    .etc_container > .container > .etc_div > .mokumoku > img {
      animation: mokumoku_anim 60s ease-in-out infinite; }
      .etc_container > .container > .etc_div > .mokumoku > img:nth-child(2) {
        position: absolute;
        top: 0;
        left: 0;
        animation-direction: reverse; }
@keyframes mokumoku_anim {
  0% {
    transform: translate(0, 0) scale(1) rotate(0deg); }
  10% {
    transform: translate(-80px, 0) scale(1.1) rotate(-10deg); }
  20% {
    transform: translate(60px, 0) scale(0.9) rotate(14deg); }
  30% {
    transform: translate(-70px, 0) scale(1.2) rotate(-16deg); }
  40% {
    transform: translate(40px, 0) scale(0.85) rotate(6deg); }
  50% {
    transform: translate(0px, 0px) scale(1) rotate(0deg); }
  60% {
    transform: translate(-50px, 0) scale(1.15) rotate(-8deg); }
  70% {
    transform: translate(80px, 0) scale(0.95) rotate(12deg); }
  80% {
    transform: translate(-60px, 0) scale(1.05) rotate(-4deg); }
  90% {
    transform: translate(40px, 0) scale(0.9) rotate(10deg); }
  100% {
    transform: translate(0, 0) scale(1) rotate(0deg); } }
  .etc_container::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: calc(100% - .5px);
    width: 100%;
    height: 20px;
    background: url(../images/etc/back.png) repeat left bottom;
    background-size: 43px 30px; }
  @media (min-width: 768px) {
    .etc_container {
      padding: 60px 0 40px; }
      .etc_container > .container > .etc_div {
        justify-content: center;
        justify-content: center; }
        .etc_container > .container > .etc_div > p {
          width: 270px;
          margin: 0 50px 0 0; }
        .etc_container > .container > .etc_div > a {
          width: 436px; }
        .etc_container > .container > .etc_div > .mokumoku {
          position: absolute;
          width: 600px;
          bottom: -290px;
          left: calc(50% - 140px);
          z-index: -1; } }
  @media (max-width: 767.98px) {
    .etc_container {
      padding: 50px 0 40px; }
      .etc_container > .container > .etc_div {
        flex-direction: column; }
        .etc_container > .container > .etc_div > p {
          width: 250px;
          margin: 0 auto 15px; }
        .etc_container > .container > .etc_div > a {
          width: 300px; }
        .etc_container > .container > .etc_div > .mokumoku {
          position: absolute;
          width: 150%;
          top: 20%;
          z-index: -1; } }
