@charset "utf-8";
/*only_pc*/
#freearea_p_osa0080001_001 .ns-inner-breadcrumbs li a:hover{text-decoration: underline;}
#freearea_p_osa0080001_001 .ns-general-wrap .ns-link-shift:hover{transform: translate(10px, 0);}
#freearea_p_osa0080001_001 .ns-general-wrap .ns-anc-wrap a:hover{transform: translate(5px, 0);}
/*only_pc*/

/*only_sp*/
#freearea_s_osa0080001_001 .ns-general-wrap{margin-top: -25px;}
/*only_sp*/

/*defaultCancel*/
#wrapper{min-width:auto;}
#wrapper:has(#freearea_s_osa0080001_001){overflow: visible;}
#container #mainContent{
  margin: 0;
  padding: 0;
}
.ns-general-wrap,.ns-general-wrap p,.ns-general-wrap a,.ns-general-wrap ul,.ns-general-wrap ol,.ns-general-wrap li,.ns-general-wrap img{
  box-sizing: border-box;
  font-feature-settings: "palt";
  font-style: normal;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
}
.ns-general-wrap img{
  vertical-align: bottom;
  -webkit-backface-visibility: hidden;
}
.ns-general-wrap,.ns-general-wrap a{
  color: #222;
  text-decoration: none;
}
h1,h2,h3{
  background: none;
  border: 0;
  margin: 0;
  padding: 0;
}
.ns-general-wrap .ns-flex-box{
  display:-webkit-flex;
  display:-ms-flex;
  display:flex;
  justify-content:space-between;
}
.ns-general-wrap{animation: fadeIn 1s ease 0s 1 normal;-webkit-animation: fadeIn 1s ease 0s 1 normal;}
@keyframes fadeIn {0% {opacity: 0}100% {opacity: 1}}
@-webkit-keyframes fadeIn {0% {opacity: 0}100% {opacity: 1}}
.ns-general-wrap{margin:-20px auto 0;}
/*defaultCancel*/

/*common_start*/
.ns-general-wrap{
  width:calc(calc(100% - 13px) - calc(100vw - 100%));
  overflow: hidden;
  position: relative;
}
#freearea_s_osa0080001_001 .ns-general-wrap{width:calc(calc(100% - 28px));}
.ns-general-wrap a{
  display: block;
  opacity: 1;
  transition: 0.3s;
}
.ns-general-wrap img{
  display: block;
  height: auto;
  width: 100%;
}
.ns-general-wrap a:hover img{opacity: 1;}
.ns-general-wrap a:before,.ns-general-wrap a:after{
  content: "";
  display: block;
  position: absolute;
}
.ns-sp-block,.ns-sp-block a,img.ns-sp-block,.ns-tab{display: none;}
.ns-common-size{
  display: block;
  margin: 0 auto;
  max-width: 1008px;
  width: 100%;
}
/*角丸枠*/
.ns-frame-t,.ns-frame-b,
.ns-frame-l,.ns-frame-r{
  background: #fff;
  position: fixed;
  z-index: 999;
}
.ns-frame-t,.ns-frame-b{
  left: 0;
  right: 0;
  height: 14px;
}
.ns-frame-l,.ns-frame-r{
  top: 218px;
  width: 14px;
  height: 100vh;
}
#freearea_s_osa0080001_001 .ns-frame-l,#freearea_s_osa0080001_001 .ns-frame-r{top: 146px;}
.ns-frame-l.ns-show,.ns-frame-r.ns-show{top: 51px;}
#freearea_s_osa0080001_001 .ns-frame-l.ns-show,#freearea_s_osa0080001_001 .ns-frame-r.ns-show{top: 50px;}
.ns-frame-t {
  top: 51px;
  display: none;
}
#freearea_s_osa0080001_001 .ns-frame-t {top: 50px;}
.ns-frame-t.ns-show{display: block;}
.ns-frame-b {bottom: 0;}
.ns-frame-l{left: 0;}
.ns-frame-r{right: 0;}
.ns-frame-t::before,.ns-frame-t::after,
.ns-frame-b::before,.ns-frame-b::after{
  content: '';
  position: absolute;
  width: 20px;
  height: 20px;
  background: url("https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250723pokemon/bg_deco_corner.png") no-repeat 0 0;
  z-index: 999;
}
.ns-frame-t::before{
  top: 14px;
  left: 14px;
}
.ns-frame-t::after{
  top: 14px;
  right: 14px;
  rotate:90deg;
}
.ns-frame-b::before{
  bottom: 14px;
  left: 14px;
  rotate:-90deg;
}
.ns-frame-b::after{
  bottom: 14px;
  right: 14px;
  rotate:180deg;
}
/*common_end*/

/*breadcrumb_start*/
.ns-inner-breadcrumbs{
  background: #fff;
  height: calc(16px + (8px * 2));
  padding: 8px 0;
  display: flex;
  align-items: center;
}
.ns-inner-breadcrumbs li{
  font-size: 12px;
  padding-left: 20px;
  position: relative;
  font-weight: 600;
}
.ns-inner-breadcrumbs li:before{
  border-right: solid 1px;
  border-top: solid 1px;
  color: #222;
  content: "";
  display: block;
  height: 6px;
  left: 0.3em;
  position: absolute;
  top: 40%;
  transform: rotate(45deg) translate(0%, -25%);
  width: 6px;
}
.ns-inner-breadcrumbs li:first-child:before{display: none;}
.ns-inner-breadcrumbs li:first-child{padding-left: 0;}
/*breadcrumb_end*/

/*top_start*/
.ns-mainvisual{
  background: #44afe3;
  border-radius: 20px 20px 0 0;
  overflow: hidden;
}
/*top_end*/

/*anc_start*/
.ns-anc-wrap{
  position: absolute;
  padding-top: 64px;
  right: 0;
  transform: translate(238px,0);
  z-index: 2;
}
.ns-anc-wrap.ns-flex-box{justify-content: end;}
.ns-anc-button{
  height: 144px;
  background: #fff;
  color: #8db9c9;
  font-weight: 600;
  border-radius: 16px 0 0 16px;
  font-size: 26px;
  padding-top: 24px;
  filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.2));
}
.ns-menu-icon{
  width: 23px;
  height: 30px;
  margin: auto;
  position: relative;
  transform: translate(1px, 0);
}
.ns-menu-icon span{
  background: #8db9c9;
  width: 3px;
  height: 100%;
  display: inline-block;
  position: absolute;
  top: 0;
}
.ns-menu-icon span:nth-of-type(2){left: 50%; transform: translate(-1px, 0);}
.ns-menu-icon span:nth-of-type(3){right: 0;}
.ns-menu-txt{
  writing-mode: vertical-rl;
  width: 48px;
  display: grid;
  align-items: center;
  margin-top: 12px;
  padding-left: 6px;
  letter-spacing: 0.03em;
}
.ns-anc-list{
  background: #d6f4ff;
  border:0 solid #fff;
  padding: 36px 14px 22px 22px;
  border-width: 4px 0 4px 4px;
  border-radius: 0 0 0 16px;
  z-index: 2;
}
.ns-anc-list.ns-col3 li{
  width: 198px;
  margin-bottom: 14px;
}
.ns-anc-list li a{
  align-items: center;
  background: #01A4D7;
  background: linear-gradient(90deg,rgba(1, 164, 215, 1) 0%, rgba(73, 190, 224, 1) 100%);
  height: 64px;
  color: #fff;
  clip-path: polygon(0% 0%, 85% 0, 100% 50%, 85% 100%, 0% 100%);
  padding-left: 17px;
}
.ns-anc-list .ns-txt{
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.06em;
}
.ns-anc-list .ns-txt .ns-txt-s{font-size: 0.75em;}
/*js*/
.ns-anc-wrap.ns-follow{
  position: fixed;
  top: 32px;
  right: 14px;
}
.ns-anc-wrap.ns-follow .ns-anc-list{background: #fff;}
.ns-anc-wrap.ns-follow.ns-open .ns-anc-list{background: #d6f4ff;}
.ns-anc-wrap.ns-open .ns-anc-button{filter: none;}
.ns-anc-wrap.ns-open{
  transform: translate(0, 0);
  filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.2));
  transition: 0.3s;
}
.ns-anc-button:hover{cursor: pointer;}
/*anc_end*/

/*ns-lead*/
.ns-lead{
  position: relative;
  background: #eff5e8;
  background: url("https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250723pokemon/bg_sozai.png");
  text-align: center;
  font-weight: 800;
  line-height: 1.75;
  padding: 76px 0 183px;
  letter-spacing: 0.08em;
  z-index: 0;
}
.ns-lead-txt .ns-txt-l{
  font-size: 32px;
  margin-bottom: 18px;
}
.ns-lead-txt .ns-txt-m{font-size: 24px;}
.ns-lead-txt .ns-txt-s{
  font-size: 16px;
  vertical-align: middle;
}
.ns-lead-txt .ns-marker{
   background: linear-gradient(transparent 60%, #fdff79 40%);
   padding: 0 10px 2px;
}
.ns-lead-txt .ns-txt-imgbox{
  margin: 15px 0 20px -18px;
  justify-content: center;
  align-items: center;
}
.ns-lead-txt .ns-txt-img{
  padding: 0 18px;
}
.ns-lead-txt .ns-txt-item{
  margin-top: 44px;
  position: relative;
}
.ns-lead-txt .ns-txt-item::before,
.ns-lead-txt .ns-txt-item::after{
  content: '';
  display: block;
  position: absolute;
  left: 50%;
  translate:-50% 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 9px solid transparent;
  border-left: 9px solid transparent;
  border-top: 8px solid #ffffff;
  border-bottom: 0;
}
.ns-lead-txt .ns-txt-item::before{
  bottom: 40px; 
  animation: blink 2s ease-out 1s infinite;
}
.ns-lead-txt .ns-txt-item::after{
  bottom: 24px;
  animation: blink 2.25s ease-out 1s infinite;
}
@keyframes blink {
  0% {opacity: 1;}
  50% {opacity: 0.5;}
  100% {opacity: 1;}
}
.ns-lead-chara{
  position: relative;
  width: 52.5vw;
  margin: 0 auto;
}
.ns-chara{
  position: absolute;
  opacity: 0;
  z-index: -1;
}
.ns-chara:nth-of-type(1){
  width: 12.553vw;
  height: 15.625vw;
  opacity: 1;
  top: 28px;
  left: -241px;
}
.ns-chara:nth-of-type(2){
  width: 12.761vw;
  height: 14.688vw;
  opacity: 1;
  top: 441px;
  left: -333px;
}
.ns-chara:nth-of-type(3){
  width: 9.115vw;
  height: 14.583vw;
  opacity: 1;
  top: 48px;
  right: -231px;
}
.ns-chara:nth-of-type(4){
  width: 15.729vw;
  height: 14.635vw;
  opacity: 1;
  top: 442px;
  right: -374px;
}
/*ns-lead*/

/*infinity*/
.ns-flowing{
  margin-top: -56px;
  opacity:0.7;
  overflow: hidden;
  margin-inline: auto;
  position: absolute;
}
.ns-infinity{
  display: flex;
  overflow: hidden;
}
.ns-infinity-list{
  display: flex;
  list-style: none;
  padding: 0;
  animation: infinity-scroll-left 50s infinite linear 0.5s both;
}
.ns-infinity-item{
  width: 1665px;
  margin-right: 95px;
}
.ns-flowing-txt{
  width: 1665px;
  margin-left: 24px;
}
@keyframes infinity-scroll-left {
  from {transform: translateX(0);}
  to {transform: translateX(-100%);}
}
/*infinity*/

/*goods_start*/
.ns-goods{
  background: #fff;
  padding-top: 193px;
}
.ns-goods .ns-common-h2{
  font-weight: 900;
  text-align: center;
}
.ns-goods .ns-common-h2 .ns-txt-s{font-size: 26px;}
.ns-goods .ns-common-h2 .ns-txt-l{
  font-size: 68px;
  letter-spacing: 0.05em;
}
.ns-goods-image{
  margin-bottom: 48px;
  position: relative;
  z-index: 1;
}
.ns-goods-wrap.ns-flex-box{
  justify-content: space-around;
  padding-top: 29px;
}
.ns-goods-unit{width: calc((100% / 2) - 1px);}
.ns-goods-unit:nth-of-type(1){
  border-right: 2px solid #dfe1e4;
  padding-left: 1px;
}
.ns-game-title{
  max-width: 400px;
  width: 100%;
  margin: 0 auto 32px;
}
.ns-game-package{
  max-width: 360px;
  width: 100%;
  margin: 0 auto;
}
.ns-goods-link{
  width: 400px;
  margin: 0 auto;
}
.ns-link-button{
  background: #000;
  border-radius: 100px;
  text-align: center;
  transition: 0.3s;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.03em;
}
.ns-link-button.ns-red{
  background: #e60012;
  margin-bottom: 16px;
}
.ns-link-button a{
  color: #fff;
  height: 66px;
  display: grid;
  align-items: center;
  position: relative;
}
.ns-link-button a::after{
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 10px solid #ffffff;
  border-right: 0;
  right: 30px;
}
.ns-goods-unit:nth-of-type(1) .ns-goods-link{margin-top: 52px;}
.ns-note-txt{
  font-size: 12px;
  text-align: center;
  font-weight: 600;
  margin: 17px 0;
}
.ns-link-button .ns-txt-ll{font-size: 24px;}
.ns-tokuten{
  clip-path: polygon(48.1% 0, 50% 5.2%, 51.9% 0, 100% 0, 100% 100%, 0 100%, 0 0);
  background: #42AFE3FF;
  background-image: linear-gradient(90deg, rgba(66, 175, 227, 1), rgba(109, 199, 234, 1));
  position: relative;
  z-index: 0;
  padding: 55px 0 29px;
}
.ns-tokuten::before{
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: radial-gradient(circle, #ffffff26 2px, transparent 2px);
  background-position: 0 0;
  background-size: 10px 10px;
  z-index: -1;
  top: 0;
  left: 0;
}
.ns-tokuten .ns-flex-box{
  align-items: center;
  z-index: 1;
}
.ns-tokuten-title{margin-top: -22px;}
.ns-goods-deco{
  position: relative;
  z-index: 1;
}
.ns-pentagon{
  position: absolute;
  width: 668px;
  height: 704px;
}
.ns-pentagon:nth-of-type(1){
  top: -25px;
  right: 75.104vw;
}
.ns-pentagon:nth-of-type(2){
  top: 634px;
  left: 75.156vw;
}
.ns-pentagon:nth-of-type(1)::after,
.ns-pentagon:nth-of-type(2)::before{
  content: '';
  display: block;
  width: 333px;
  height: 353px;
  position: absolute;
}
.ns-pentagon:nth-of-type(1)::after{
  background: url("https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250723pokemon/bg_deco02.png") no-repeat 0 0 / 100%;
  top: 495px;
  right: 11px;
  rotate:90deg;
  filter: drop-shadow(0px 0px 0.5px #99dfe3) drop-shadow(0px 0px 0.5px #99dfe3);
}
.ns-pentagon:nth-of-type(2)::before{
  background: url("https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250723pokemon/bg_deco01.png") no-repeat 0 0 / 100%;
  top: -143px;
  left: 10px;
  rotate:-90deg;
  filter: drop-shadow(0px 0px 0.5px #b3dff4) drop-shadow(0px 0px 0.5px #b3dff4);
}
/*goods_end*/

/*game_start*/
.ns-game{
  background: url("https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250723pokemon/im_scene_00.png") no-repeat center 0 / 1878px auto;
  border-radius: 0 0 20px 20px;
  overflow: hidden;
}
.ns-game-scene .ns-flex-box{justify-content: flex-start;}
.ns-game-scene .ns-item{min-width: 235px;}
.ns-game-intro{
  width: 1026px;
  margin: 133px auto 121px;
}
.ns-intro-txt{
  margin: 0px -6px 0 6px;
}
/*game_end*/

/*footer_start*/
.ns-footer{
  background: #fff;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
  padding: 17px 0;
  text-align: center;
  letter-spacing: 0.1em;
  border-bottom: 3px solid #E6E6E6;
}
/*footer_end*/

/*related*/
.ns-related{
  text-align: center;
  background: #f3f4f5;
  margin: 14px 0;
  padding: 56px 0 104px;
}
.ns-related-unit:nth-of-type(n+2){margin-top: 96px;}
.ns-related .ns-common-h2{
  font-size: 48px;
  font-weight: 900;
  margin-bottom: 32px;
  letter-spacing: 0.05em;
}
.ns-related-list.ns-col-2{padding: 0 168px;}
.ns-related-list.ns-col-2 .ns-related-item,
.ns-related-list.ns-col-3 .ns-related-item{width: 300px;}
.ns-related-list.ns-col-4 .ns-related-item{width: 230px;}
.ns-related-item{letter-spacing: 0.05em;}
.ns-related-item .ns-item-title{
  font-size: 20px;
  font-weight: 600;
  margin-top: 12px;
  position: relative;
}
.ns-related-list.ns-col-4 .ns-related-item .ns-item-title{line-height: 1.3;}
.ns-related-item .ns-button{position: relative;}
.ns-related-item .ns-button a{
  margin-top: 12px;
  background: #3466ae;
  border-radius:100px;
  color: #fff;
  font-size: 18px;
  padding: 12px 0 11px;
}
.ns-related-item .ns-button a::after{
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid #ffffff;
  border-right: 0;
  top: 50%;
  right: 24px;
  translate: 0 -50%
}
/*related*/

/*hover*/
.ns-general-wrap a,.ns-general-wrap a img{transition: 0.3s;}
/*hover*/

/*1366 or less*/
@media screen and (max-width:1365px){
  /*common_start*/
  .ns-common-size{width: 76.172vw;}
  /*common_end*/

  /*ns-lead*/
  .ns-lead{
    padding: 5.564vw 0 13.397vw;
    background-size: 13.04vw;
  }
  .ns-lead-txt .ns-txt-l{
    font-size: 2.343vw;
    margin-bottom: 1.318vw;
  }
  .ns-lead-txt .ns-txt-m{font-size: 1.757vw;}
  .ns-lead-txt .ns-txt-s{font-size: 1.172vw;}
  .ns-lead-txt .ns-marker{padding: 0 0.732vw 0.146vw;}
  .ns-lead-txt .ns-txt-imgbox{margin: 1.098vw 0 1.464vw -1.318vw;}
  .ns-lead-txt .ns-txt-img{padding: 0 1.318vw;}
  .ns-lead-txt .ns-txt-img:nth-of-type(1){width: 28.572vw;}
  .ns-lead-txt .ns-txt-img:nth-of-type(2){width: 18.316vw;}
  .ns-lead-txt .ns-txt-item{margin-top: 3.223vw;}
  .ns-lead-txt .ns-txt-item::before,
  .ns-lead-txt .ns-txt-item::after{
    border-right: 0.66vw solid transparent;
    border-left: 0.66vw solid transparent;
    border-top: 0.587vw solid #ffffff;
  }
  .ns-lead-txt .ns-txt-item::before{bottom: 2.93vw;}
  .ns-lead-txt .ns-txt-item::after{bottom: 1.758vw;}
  .ns-lead-chara{width: 52.455vw;}
  .ns-chara:nth-of-type(1){
    width: 12.601vw;
    height: 15.678vw;
    top: 2.051vw;
    left: -17.656vw;
  }
  .ns-chara:nth-of-type(2){
    width: 12.747vw;
    height: 14.652vw;
    top: 32.308vw;
    left: -25.396vw;
  }
  .ns-chara:nth-of-type(3){
    width: 9.084vw;
    height: 14.505vw;
    top: 3.516vw;
    right: -16.923vw;
  }
  .ns-chara:nth-of-type(4){
    width: 15.751vw;
    height: 14.652vw;
    top: 32.381vw;
    right: -28.399vw;
  }
  /*ns-lead*/

  /*infinity*/
  .ns-flowing{margin-top: -4.103vw;}
  .ns-infinity-item{
    width: 121.978vw;
    margin-right: 6.96vw;
  }
  .ns-flowing-txt{
    width: 121.978vw;
    margin-left: 1.758vw;
  }
  /*infinity*/

  /*goods_start*/
  .ns-goods{padding-top: 14.139vw;}
  .ns-goods .ns-common-h2 .ns-txt-s{font-size: 1.905vw;}
  .ns-goods .ns-common-h2 .ns-txt-l{font-size: 4.982vw;}
  .ns-goods-image{margin-bottom: 3.516vw;}
  .ns-goods-wrap.ns-flex-box{padding-top: 2.125vw;}
  .ns-game-title{
    width: 29.304vw;
    margin-bottom: 2.344vw;
  }
  .ns-game-package{width: 26.374vw;}
  .ns-goods-link{width: 29.304vw;}
  .ns-link-button{font-size: 1.465vw;}
  .ns-link-button.ns-red{margin-bottom: 1.172vw;}
  .ns-link-button a{height: 4.835vw;}
  .ns-link-button a::after{
    border-top: 0.44vw solid transparent;
    border-bottom: 0.44vw solid transparent;
    border-left: 0.733vw solid #ffffff;
    right: 2.198vw;
  }
  .ns-goods-unit:nth-of-type(1) .ns-goods-link{margin-top: 3.81vw;}
  .ns-note-txt{
    font-size: 0.879vw;
    margin: 1.245vw 0;
  }
  .ns-link-button .ns-txt-ll{font-size: 1.758vw;}
  .ns-tokuten{
    clip-path: polygon(47.5% 0, 50% 4.5%, 52.5% 0, 100% 0, 100% 100%, 0 100%, 0 0);
    padding: 4.029vw 0 2.125vw;
  }
  .ns-tokuten::before{
    background-image: radial-gradient(circle, #ffffff26 0.147vw, transparent 0.147vw);
    background-size: 0.733vw 0.733vw;
  }
  .ns-tokuten-title{
    margin-top: -1.612vw;
    width: 6.667vw;
  }
  .ns-tokuten-im{width: 63.663vw;}
  .ns-pentagon{
    width: 48.938vw;
    height: 51.575vw;
  }
  .ns-pentagon:nth-of-type(1){
    top: -1.832vw;
    right: 83.516vw;
  }
  .ns-pentagon:nth-of-type(2){
    top: 52.015vw;
    left: 83.516vw;
  }
  .ns-pentagon:nth-of-type(1)::after,
  .ns-pentagon:nth-of-type(2)::before{
    width: 24.396vw;
    height: 25.861vw;
  }
  .ns-pentagon:nth-of-type(1)::after{
    top: 36.264vw;
    right: 0.806vw;
    filter: drop-shadow(0px 0px 0.5px #99dfe3);
  }
  .ns-pentagon:nth-of-type(2)::before{
    top: -10.476vw;
    left: 0.733vw;
    filter: drop-shadow(0px 0px 0.5px #b3dff4);
  }
  /*goods_end*/
  
  /*game_start*/
  .ns-game{
    background-size: 117.216vw;
    background-position: center 7.326vw;
  }
  .ns-game-scene.ns-flex-box{justify-content: center;}
  .ns-game-scene .ns-item{min-width: 13.04vw;}
  .ns-game-intro{
    width: 75.165vw;
    margin: 9.744vw auto 8.864vw;
  }
  .ns-intro-txt{margin: 0px -0.44vw 0 0.44vw;}
  /*game_end*/
  
  /*related*/
  .ns-related{
    margin: 1.026vw 0;
    padding: 4.103vw 0 7.619vw;
  }
  .ns-related-unit:nth-of-type(n+2){margin-top: 7.033vw;}
  .ns-related .ns-common-h2{
    font-size: 3.516vw;
    margin-bottom: 2.344vw;
  }
  .ns-related-list.ns-col-2{padding: 0 clamp(8.75rem, 3.474rem + 8.24vw, 10.5rem);}
  .ns-related-list.ns-col-2 .ns-related-item,
  .ns-related-list.ns-col-3 .ns-related-item{width: 21.978vw;}
  .ns-related-list.ns-col-4 .ns-related-item{width: 16.85vw;}
  .ns-related-item .ns-item-title{
    font-size: 1.465vw;
    margin-top: 0.879vw;
  }
  .ns-related-item .ns-button a{
    margin-top: 0.879vw;
    font-size: 1.319vw;
    padding: 0.879vw 0 0.806vw;
  }
  .ns-related-item .ns-button a::after{    
    border-top: 0.366vw solid transparent;
    border-bottom: 0.366vw solid transparent;
    border-left: 0.586vw solid #ffffff;
    right: 1.758vw;
  }
  /*related*/
}
/*1024 or less tablet*/
@media screen and (max-width:1024px) and (min-width: 641px){
  /*common_start*/
  .ns-tab{display: block;}
  .ns-general-wrap{width:calc(calc(100% - 1.07422vw) - calc(100vw - 100%));}
  #freearea_s_osa0080001_001 .ns-general-wrap{width:calc(calc(100% - 2.8vw));}
  .ns-common-size{width: 85.938vw;}
  /*角丸枠*/
  .ns-frame-t,.ns-frame-b{height: 1.172vw;}
  .ns-frame-l,.ns-frame-r{width: clamp(0.75rem, 0.541rem + 0.52vw, 0.875rem);}
  #freearea_s_osa0080001_001 .ns-frame-l,#freearea_s_osa0080001_001 .ns-frame-r{width: clamp(0.563rem, 0.039rem + 1.31vw, 0.875rem);}
  .ns-frame-t::before,.ns-frame-t::after,
  .ns-frame-b::before,.ns-frame-b::after{
    width: 1.563vw;
    height: 1.563vw;
    background-size: 100%;
  }
  .ns-frame-t::before{
    top: clamp(0.438rem, -0.086rem + 1.31vw, 0.75rem);
    left: clamp(0.688rem, 0.478rem + 0.52vw, 0.813rem);
  }
  .ns-frame-t::after{
    top: clamp(0.438rem, -0.086rem + 1.31vw, 0.75rem);
    right: clamp(0.688rem, 0.478rem + 0.52vw, 0.813rem);
  }
  .ns-frame-b::before{
    bottom: clamp(0.438rem, -0.086rem + 1.31vw, 0.75rem);
    left: clamp(0.688rem, 0.478rem + 0.52vw, 0.813rem);
  }
  .ns-frame-b::after{
    bottom: clamp(0.438rem, -0.086rem + 1.31vw, 0.75rem);
    right: clamp(0.688rem, 0.478rem + 0.52vw, 0.813rem);
  }
  #freearea_s_osa0080001_001 .ns-frame-t::before{
    top: clamp(0.5rem, 0.082rem + 1.04vw, 0.75rem);
    left: clamp(0.563rem, 0.039rem + 1.31vw, 0.875rem);
  }
  #freearea_s_osa0080001_001 .ns-frame-t::after{
    top: clamp(0.5rem, 0.082rem + 1.04vw, 0.75rem);
    right: clamp(0.563rem, 0.039rem + 1.31vw, 0.875rem);
  }
  #freearea_s_osa0080001_001 .ns-frame-b::before{
    bottom: clamp(0.5rem, 0.082rem + 1.04vw, 0.75rem);
    left: clamp(0.563rem, 0.039rem + 1.31vw, 0.875rem);
  }
  #freearea_s_osa0080001_001 .ns-frame-b::after{
    bottom: clamp(0.5rem, 0.082rem + 1.04vw, 0.75rem);
    right: clamp(0.563rem, 0.039rem + 1.31vw, 0.875rem);
  }
  /*common_end*/
  
  /*top_start*/
  .ns-mainvisual{border-radius: 1.563vw 1.563vw 0 0;}
  /*top_end*/

  /*anc_start*/
  .ns-anc-wrap{
    padding-top: 6.25vw;
    transform: translate(23.242vw,0);
  }
  .ns-anc-button{
    height: 14.063vw;
    border-radius: 1.563vw 0 0 1.563vw;
    font-size: 2.539vw;
    padding-top: 2.344vw;
  }
  .ns-menu-icon{
    width: 2.247vw;
    height: 2.93vw;
  }
  .ns-menu-icon span{width: 0.293vw;}
  .ns-menu-icon span:nth-of-type(2){transform: translate(-0.098vw, 0);}
  .ns-menu-txt{
    width: 4.688vw;
    margin-top: 1.172vw;
    padding-left: 0.586vw;
  }
  .ns-anc-list{
    padding: 3.516vw 1.367vw 2.148vw 2.148vw;
    border-width: 0.391vw 0 0.391vw 0.391vw;
    border-radius: 0 0 0 1.563vw;
  }
  .ns-anc-list.ns-col3 li{
    width: 19.336vw;
    margin-bottom: 1.367vw;
  }
  .ns-anc-list li a{
    height: 6.25vw;
    padding-left: 1.66vw;
  }
  .ns-anc-list .ns-txt{font-size: 1.563vw;}
  /*js*/
  .ns-anc-wrap.ns-follow{right: 1.367vw;}
  /*anc_end*/

  /*ns-lead*/
  .ns-lead{
    background-size: 12.695vw auto;
    padding: 7.422vw 0 12.891vw;
  }
  .ns-lead-txt .ns-txt-l{
    font-size: 3.125vw;
    margin-bottom: 1.758vw;
  }
  .ns-lead-txt .ns-txt-m{font-size: 2.344vw;}
  .ns-lead-txt .ns-txt-s{font-size: 1.563vw;}
  .ns-lead-txt .ns-marker{padding: 0 0.977vw 0.195vw;}
  .ns-lead-txt .ns-txt-imgbox{margin: 1.465vw 0 1.953vw -1.758vw;}
  .ns-lead-txt .ns-txt-img{padding: 0 1.758vw;}
  .ns-lead-txt .ns-txt-img:nth-of-type(1){width: 38.086vw;}
  .ns-lead-txt .ns-txt-img:nth-of-type(2){width: 24.415vw;}
  .ns-lead-txt .ns-txt-item{margin-top: 4.297vw;}
  .ns-lead-txt .ns-txt-item::before,
  .ns-lead-txt .ns-txt-item::after{
    border-right: 0.879vw solid transparent;
    border-left: 0.879vw solid transparent;
    border-top: 0.782vw solid #ffffff;
  }
  .ns-lead-txt .ns-txt-item::before{bottom: 3.906vw; }
  .ns-lead-txt .ns-txt-item::after{bottom: 2.344vw;}
  .ns-lead-chara{width: 100%;}
  .ns-chara{display: none;}
  /*ns-lead*/

  /*infinity*/
  .ns-flowing{margin-top: -5.469vw;}
  .ns-infinity-item{
    width: 162.598vw;
    margin-right: 9.277vw;
  }
  .ns-flowing-txt{
    width: 162.598vw;
    margin-left: 2.344vw;
  }
  /*infinity*/

  /*goods_start*/
  .ns-goods{padding-top: 17.578vw;}
  .ns-goods .ns-common-h2 .ns-txt-s{font-size: 2.246vw;}
  .ns-goods .ns-common-h2 .ns-txt-l{
    font-size: 5.762vw;
    letter-spacing: 0.05em;
  }
  .ns-goods-image{margin-bottom: 4.688vw;}
  .ns-goods-wrap.ns-flex-box{padding-top: 2.832vw;}
  .ns-game-title{
    width: 35.156vw;
    margin-bottom: 3.906vw;
  }
  .ns-game-package{width: 31.25vw;}
  .ns-goods-link{width: 35.156vw;}
  .ns-link-button{font-size: 1.953vw;}
  .ns-link-button.ns-red{margin-bottom: 1.563vw;}
  .ns-link-button a{height: 6.445vw;}
  .ns-link-button a::after{
      border-top: 0.586vw solid transparent;
      border-bottom: 0.586vw solid transparent;
      border-left: 0.977vw solid #ffffff;
      right: 1.953vw;
  }
  .ns-goods-unit:nth-of-type(1) .ns-goods-link{margin-top: 6.25vw;}
  .ns-note-txt{
    font-size: 1.172vw;
    margin: 1.367vw auto;
    width: 37.109vw;
  }
  .ns-link-button .ns-txt-ll{font-size: 2.344vw;}
  .ns-tokuten{
    clip-path: polygon(47% 0, 50% 5%, 53% 0, 100% 0, 100% 100%, 0 100%, 0 0);
    padding: 5.371vw 0 2.832vw;
  }
  .ns-tokuten::before{
    background-image: radial-gradient(circle, #ffffff26 0.195vw, transparent 0.195vw);
    background-size: 0.977vw 0.977vw;
  }
  .ns-tokuten-title{
    margin-top: -2.148vw;
    width: 8.887vw;
  }
  .ns-tokuten-im{width: 71.289vw;}
  .ns-goods-deco{display: none;}
  /*goods_end*/

  /*game_start*/
  .ns-game{
    background-size: 122.07vw auto;
    background-position: center 6.836vw;
    border-radius: 0 0 1.563vw 1.563vw;
  }
  .ns-game-scene .ns-item{min-width: 14.648vw;}
  .ns-game-intro{
    width: 87.5vw;
    margin: 12.988vw auto 11.816vw;
  }
  .ns-intro-txt{margin: 0px -0.391vw 0 0.391vw;}
  /*game_end*/

  /*related*/
  .ns-related{
    margin: 1.367vw 0;
    padding: 5.469vw 0 10.156vw;
  }
  .ns-related-unit:nth-of-type(n+2){margin-top: 9.375vw;}
  .ns-related .ns-common-h2{
    font-size: 4.688vw;
    margin-bottom: 3.125vw;
  }
  .ns-related-list.ns-col-2{padding: 0px 14.844vw;}
  .ns-related-list.ns-col-2 .ns-related-item,
  .ns-related-list.ns-col-3 .ns-related-item{width: 26.367vw;}
  .ns-related-list.ns-col-4 .ns-related-item{width: 19.531vw;}
  .ns-related-item .ns-item-title{
    font-size: 1.758vw;
    margin-top: 1.172vw;
  }
  .ns-related-item .ns-button a{
    margin-top: 1.172vw;
    font-size: 1.758vw;
    padding: 1.172vw 0 1.074vw;
  }
  .ns-related-item .ns-button a::after{
    border-top: 0.488vw solid transparent;
    border-bottom: 0.488vw solid transparent;
    border-left: 0.781vw solid #fff;
    right: 2.344vw;
  }
  /*related*/
}
@media screen and (max-width:640px){
  /*defaultCancel*/
  .ns-inner-breadcrumbs li a.is-tap{text-decoration: none!important;}
  /*defaultCancel*/

  /*SP_breadcrumb_start*/
  .ns-inner-breadcrumbs{
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    width: 100%;
    padding-left: 10px;
  }
  .ns-inner-breadcrumbs li{
    display: block;
    float: initial;
  }
  .ns-inner-breadcrumbs li:nth-of-type(n+2){padding-left: 15px;}
  .ns-inner-breadcrumbs li:before{
    top: 50%;
    transform: rotate(45deg) translate(-50%, -20%);
  }
  /*SP_breadcrumb_end*/

  /*common_start*/
  .ns-tab{display: none;}
  .ns-sp-block,.ns-sp-block a,img.ns-sp-block{display: block;}
  .ns-pc-block,.ns-pc-block a,img.ns-pc-block{display: none;}
  .ns-general-wrap{-webkit-text-size-adjust: 100%;}
  #freearea_s_osa0080001_001 .ns-general-wrap,.ns-general-wrap{width: 100%;}
  .ns-common-size{width: 100%;}
  /*角丸枠*/
  .ns-frame-t,.ns-frame-t.ns-show,.ns-frame-b,.ns-frame-l,.ns-frame-r{display: none;}
  .ns-frame-t::before,.ns-frame-t::after,.ns-frame-b::before,.ns-frame-b::after{display: none;}
  /*common_end*/

  /*top_start*/
  .ns-mainvisual{border-radius:0;}
  /*top_end*/

  /*anc_start*/
  .ns-anc-wrap{
    padding-top: 2.967vw;
    transform: translate(70.623vw,0);
  }
  .ns-anc-button{
    height: 100%;
    border-radius: 2.374vw 0 0 2.374vw;
    padding-top: 0;
  }
  .ns-menu-icon{
    width: 5.638vw;
    height: 6.528vw;
    margin: 2.374vw;
    transform: translate(0, -0.593vw);
    rotate:90deg;
  }
  .ns-menu-icon span{width: 0.89vw;}
  .ns-menu-icon span:nth-of-type(2){transform: translate(-0.593vw, 0);}
  .ns-menu-txt{display: none;}
  .ns-anc-list{
    padding: 10.682vw 4.154vw 6.528vw 6.528vw;
    border-width: 1.187vw 0 1.187vw 1.187vw;
    border-radius: 0 0 0 4.748vw;
  }
  .ns-anc-list.ns-col3 li{
    width: 58.754vw;
    margin-bottom: 4.154vw;
  }
  .ns-anc-list li a{
    height: 18.991vw;
    padding-left: 5.045vw;
  }
  .ns-anc-list .ns-txt{font-size: 4.748vw;}
  /*js*/
  .ns-anc-wrap.ns-follow{
    top: 16.617vw;
    right: 0;
  }
  .ns-anc-wrap.ns-open{transform: translate(0, 0);}
  .ns-anc-wrap.ns-open .ns-menu-icon span:nth-of-type(1){
    rotate: 45deg;
    translate:2.5vw 0;
  }
  .ns-anc-wrap.ns-open .ns-menu-icon span:nth-of-type(2){
    display: none;
  }
  .ns-anc-wrap.ns-open .ns-menu-icon span:nth-of-type(3){
    rotate: -45deg;
    translate:-2.5vw 0;
  }
  /*anc_end*/

  /*ns-lead*/
  .ns-lead{
    background-size: 26.409vw auto;
    padding: 30.63% 0 19.38%;
    letter-spacing: 0.03em;
  }
  .ns-lead-txt .ns-txt-l{
    font-size: clamp(0.712rem, 3.56vw, 1.424rem);
    margin-bottom: 3.13%;
  }
  .ns-txt-m .ns-txt-l{font-size: clamp(0.771rem, 3.86vw, 1.542rem);}
  .ns-lead-txt .ns-txt-m{font-size: clamp(0.534rem, 2.67vw, 1.069rem);}
  .ns-lead-txt > .ns-txt-m{font-size: clamp(0.653rem, 3.27vw, 1.306rem);}
  .ns-lead-txt .ns-txt-s{font-size: clamp(0.416rem, 0.013rem + 2.02vw, 0.819rem);}
  .ns-lead-txt .ns-marker{padding: 0 1.56% 0.63%;}
  .ns-lead-txt .ns-txt-imgbox{margin: 3.75% 0 2.81% -2.5%;}
  .ns-lead-txt .ns-txt-img{padding: 0 2.44%;}
  .ns-lead-txt .ns-txt-img:nth-of-type(1),
  .ns-lead-txt .ns-txt-img:nth-of-type(2){width: 30.49%;}
  .ns-lead-txt .ns-txt-item{margin-top: 4.69%;}
  .ns-lead-txt .ns-txt-item::before,
  .ns-lead-txt .ns-txt-item::after{
    border-right: 2.077vw solid transparent;
    border-left: 2.077vw solid transparent;
    border-top: 1.79vw solid #ffffff;
  }
  .ns-lead-txt .ns-txt-item::before{bottom: 7.715vw;}
  .ns-lead-txt .ns-txt-item::after{bottom: 4.748vw;}
  .ns-lead-chara{width: 80%;}
  .ns-chara:nth-of-type(1){
    width: 16.617vw;
    height: 20.772vw;
    top: -24.332vw;
    left:0;
  }
  .ns-chara:nth-of-type(2){
    width: 16.914vw;
    height: 21.068vw;
    top: -23.145vw;
    left: 17.804vw;
  }
  .ns-chara:nth-of-type(3){
    width: 12.166vw;
    height: 21.068vw;
    top: -23.145vw;
    right: 23.442vw;
  }
  .ns-chara:nth-of-type(4){
    width: 21.068vw;
    height: 21.068vw;
    top: -23.145vw;
    right: -0.89vw;
  }
  /*ns-lead*/

  /*infinity*/
  .ns-flowing{margin-top: -5.94%;}
  .ns-infinity-item{
    width: 193.769vw;
    margin-right: 11.869vw;
  }
  .ns-flowing-txt{
    width: 193.769vw;
    margin-left: 2.967vw;
  }
  /*infinity*/

  /*goods_start*/
  .ns-goods{padding-top: 18.75%;}
  .ns-goods .ns-common-h2 .ns-txt-s{
    font-size: clamp(0.712rem, 3.56vw, 1.424rem);
    display: block;
    line-height: 1.5;
  }
  .ns-goods .ns-common-h2 .ns-txt-l{
    font-size: clamp(1.899rem, 9.5vw, 3.799rem);
    letter-spacing: 0;
    display: block;
    margin-top: 1.56%;
    line-height: 1.25;
  }
  .ns-goods-image{margin-bottom: 11.25%;}
  .ns-goods-wrap.ns-flex-box{padding-top: 2.5%;}
  .ns-game-title{
    width: 83%;
    margin-bottom: 12.38%;
  }
  .ns-game-package{width: 70%;}
  .ns-goods-link{width: 91.5%;}
  .ns-link-button{
    font-size: clamp(0.712rem, 3.56vw, 1.424rem);
    line-height: 1.3;
  ;}
  .ns-link-button.ns-red{margin-bottom: 5.52%;}
  .ns-link-button a{height: 14.243vw;}
  .ns-link-button a::after{
    border-top: 1.484vw solid transparent;
    border-bottom: 1.484vw solid transparent;
    border-left: 2.078vw solid #ffffff;
    right: 2.967vw;
  }
  .ns-goods-unit:nth-of-type(1) .ns-goods-link{margin-top: 19.5%;}
  .ns-note-txt{
    font-size: clamp(0.386rem, 1.93vw, 0.771rem);
    margin: 1.78vw 2.967vw;
    word-break: break-word;
  }
  .ns-link-button .ns-txt-ll,
  .ns-link-button .ns-txt-l{font-size: clamp(0.831rem, 4.15vw, 1.661rem);}
  .ns-tokuten{
    clip-path: polygon(44.5% 0, 50% 2.2%, 55.5% 0, 100% 0, 100% 100%, 0 100%, 0 0);
    padding: 16.5vw 0 8.605vw;
  }
  .ns-tokuten::before{
    background-image: radial-gradient(circle, #ffffff26 0.297vw, transparent 0.297vw);
    background-size: 2.077vw 2.077vw;
  }
  .ns-tokuten .ns-flex-box{display: block;}
  .ns-tokuten-title{
    width: 64.688vw;
    margin: -4.748vw auto 8.309vw;
  }
  .ns-tokuten-im{
    width: 89.021vw;
    margin: 0 auto;
  }
  .ns-pentagon{display: none;}
  /*goods_end*/

  /*game_start*/
  .ns-game{
    background-size: 181.899vw auto;
    background-position: 0 39.169vw;
    border-radius: 0;
  }
  .ns-game-scene.ns-flex-box{-webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;}
  .ns-game-scene .ns-item{min-width: 34.866vw;}
  .ns-game-intro{
    width: 91.691vw;
    margin: 17.211vw auto 15.727vw;
  }
  .ns-intro-txt{margin: 0 -0.593vw 0 0.593vw;}
  /*game_end*/

  /*footer_start*/
  .ns-footer{
    line-height: 1.4;
    padding: 12px 3% 20px;
    letter-spacing: 0;
    border-width: 0 0 2px 0;
  }
  /*footer_end*/
  
  /*related*/
  .ns-related{
    margin: 2.5% 0;
    padding: 12.5% 0 22.5%;
  }
  .ns-related-unit:nth-of-type(n+2){margin-top: 20%;}
  .ns-related .ns-common-h2{
    font-size: clamp(1.899rem, 9.5vw, 3.799rem);
    margin-bottom: 6%;
  }
  .ns-related .ns-related-list.ns-flex-box{
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
    justify-content: space-around;
    padding: 0 1.25%;
  }  
  .ns-related-list[class*="ns-col-"] .ns-related-item{width: 46.155%;}
  .ns-related-list .ns-related-item:nth-of-type(n+3){margin-top: 6.41%;}
  .ns-related-item .ns-item-title{
    font-size: clamp(0.712rem, 3.56vw, 1.424rem);
    margin-top: 8.33%;
  }
  .ns-related-item .ns-button a{
    margin-top: 8.33%;
    font-size: clamp(0.831rem, 4.15vw, 1.661rem);
    padding: 8.33% 0 7.64%;
  }
  .ns-related-item .ns-button a::after{
    border-top: 1.187vw solid transparent;
    border-bottom: 1.187vw solid transparent;
    border-left: 1.78vw solid #ffffff;
    right: 8.33%;
  }
  /*related*/
}
@media print {
  body{
    min-width: 1000px;
    overflow-x: visible;
    overflow-y: visible;
  }
  h2,h3{page-break-after: avoid;}
  }