@charset "utf-8";
#ns_ContentsWrapAll * {
  text-decoration: none !important;
}
.ns_ContentsWrapAll {
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  width: 100%;
  margin-top: -20px;
  font-size: 16px;
  color: #000;
  font-feature-settings: "palt";
  letter-spacing: 0.05rem;
  line-height: 1.6;
    font-family: YakuHanJP, "Zen Old Mincho", "Hiragino Mincho ProN", "Noto Serif JP", "Yu Mincho", YuMincho, serif;
  font-weight: 400;
  font-style: normal;
}
#wrapper {
	overflow: hidden !important;
	min-width: auto !important;
}
#mainContent {
  padding: 0 !important;
  margin-bottom: 0 !important;
}
.ns_ContentsWrapAll .ns_flex {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
justify-content: center;
    flex-wrap: wrap;
}

.ns_ContentsWrapAll a {
  text-decoration: none;
  transition: 0.3s;
  display: block;
  color: #222;
}
.ns_ContentsWrapAll a img {
}
.ns_ContentsWrapAll a:hover img {
  opacity: 1;
}
.ns_ContentsWrapAll img {
  width: 100%;
  height: auto;
  display: block;
}
.ns_ContentsWrapAll a {
}
.ns_ContentsWrapAll a:before,
.ns_ContentsWrapAll a:after {
  position: absolute;
  content: "";
  display: block;
}
.ns_commonSize {
  max-width: 1120px;
  width: 100%;
  margin: 0 auto;
  padding: 0 60px;
  display: block;
  box-sizing: border-box;
}
.contents_wrap h1 {
  margin: 0;
  padding: 0;
  border: none;
}
.ns_ContentsWrapAll h2 {
  margin: 0;
  padding: 0;
  border-bottom: none;
}
.ns_ContentsWrapAll h3 {
  margin: 0;
  padding: 0;
  border-bottom: none;
  background: rgba(255, 255, 255, 0);
  line-height: 1.3;
}
.SP,
.SP a,
img.SP {
  display: none;
}
.ns_middle {
	display: none;	
	}
/*common_start*/
.ns_goods_contents {
	position: relative;
}
.ns_goods_contents::before {
    position: fixed;
    content: "";
    display: block;
        width: 100%;
    height: 100%;
    top: 0;
    left: -50%;
	margin-left: clamp(-38vw, -560px, -560px);
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/side_pattern_PC.png) repeat top right;
    z-index: 1;
}
.ns_goods_contents::after {
    position: fixed;
    content: "";
    display: block;
        width: 100%;
    height: 100%;
    top: 0;
    right: -50%;
	margin-right: clamp(-38vw, -560px, -560px);
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/side_pattern_PC.png) repeat top left;
    z-index: 0;
}
h2.ns_commonTitleH2 {
	position: relative;
  padding-top: 90px;
  text-align: center;
  font-size: 50px;
  font-weight: 500;
  line-height: 1.3;
	z-index: 1;
}
h2.ns_commonTitleH2 .ns_commonSize {
  position: relative;
  z-index: 1;
}
h2.ns_commonTitleH2 .ns_commonSize::before {
  position: absolute;
    content: "";
    top: 4px;
    left: 50%;
    height: 10px;
    background: #d1a024;
    z-index: -1;
    width: 100vw;
    inset-inline: 50%;
    margin-inline: -50vw;
}

h2 .ns_title_img {
  display: block;
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}

.ns_title_bg_item_01 {
	position: absolute;
    width: 271px;
    top: 47px;
    left: 50%;
	margin-left: clamp(-66vw, -760px, -760px);
    z-index: -1;
}
.ns_title_bg_item_02 {
	position: absolute;
    width: 82px;
    top: 40px;
    right: 50%;
	margin-right: clamp(-48vw, -558px, -558px);
    z-index: -1;
}
.ns_title_bg_item_03 {
	    position: absolute;
    width: 95px;
    top: 200px;
    left: 50%;
	margin-left: clamp(-42vw, -560px, -560px);
    z-index: -1;
}
.ns_title_bg_item_04 {
	position: absolute;
    width: 220px;
    top: 147px;
    right: 50%;
	margin-right: clamp(-55vw, -710px, -710px);
    z-index: -1;
}


h3.ns_commonTitleH3 {
  font-size: 36px;
  text-align: center;
  margin: 0 auto 60px;
  padding-top: 90px;
}

h3.ns_commonTitleH3 .ns_txt {
	margin-bottom: 10px;
	line-height: 1;
	    letter-spacing: -0.05rem;
	font-weight: 600;
}
h3.ns_commonTitleH3 .ns_kinds {
	display: inline-block;
	background: #000;
	color: #fff;
	font-size: 24px;
	padding: 0.3rem 1.5rem;
	font-weight: 500;
	border-radius: 50px;
}
.ns_areaMiddle {
	clip-path: inset(0);
}
.ns_areaH2 {
  padding-bottom: 200px;
}
.ns_goods_01, .ns_goods_02, .ns_goods_03, .ns_goods_04, .ns_goods_05, .ns_goods_06 {
	position: relative;
	z-index: 1;
}

.ns_goods_02, .ns_goods_03 {
	padding-bottom: 90px;
}
.ns_line {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    border: none;
    height: 17px;
     background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/line.png) repeat-x center center;
}
/*hover_start*/
.ns_ContentsWrapAll a,
.ns_ContentsWrapAll a img,
.ns_ticket__bt .NS_general_7ticket {
  transition: 0.3s;
  opacity: 1;
}
.ns_ContentsWrapAll a:hover {
  transform: translate(0, 0);
  transition: 0.3s;
}
.ns_ContentsWrapAll .ns_anc a:hover {
  transform: translate(0, 0);
  transition: 0.3s;
}
/*hover_end*/

/* ふわっと下から */
.ns_fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 0.5s;
  animation-delay: 0.28s;
  animation-fill-mode: forwards;
}
@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(15px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.ns_fadeUpTrigger {
  opacity: 0;
}
.ns_goods__inner.ns_fadeUpTrigger:nth-child(1) {
 animation-delay: 0.28s;
}
.ns_goods__inner.ns_fadeUpTrigger:nth-child(2) {
 animation-delay: 0.36s;
}
.ns_goods__inner.ns_fadeUpTrigger:nth-child(3) {
 animation-delay: 0.44s;
}
.ns_goods__inner.ns_fadeUpTrigger:nth-child(4) {
 animation-delay: 0.52s;
}
.ns_goods__inner.ns_fadeUpTrigger:nth-child(5) {
 animation-delay: 0.6s;
}
.ns_goods__inner.ns_fadeUpTrigger:nth-child(6) {
 animation-delay: 0.68s;
}

/*breadcrumb_start*/
.ns_breadcrumb {
  background: #fff;
  width: 100%;
  display: block;
  height: calc(1em + (8px * 2));
  border-bottom: 1px solid #fff;
  padding: 8px;
  box-sizing: border-box;
  line-height: 1.5;
}
ol.ns_breadcrumb li {
  position: relative;
  float: left;
  padding-left: 20px;
  font-size: 14px;
  font-weight: 600;
　letter-spacing: -0.02em;
}
ol.ns_breadcrumb li:before {
  position: absolute;
  content: "";
  display: block;
  top: 38%;
  left: 0.2rem;
  width: 6px;
  height: 6px;
  border-right: solid 1px;
  border-top: solid 1px;
  transform: rotate(45deg) translate(0, -25%);
  color: #000;
}
ol.ns_breadcrumb li:first-child:before {
  display: none;
}
ol.ns_breadcrumb li:first-child {
  padding-left: 0;
  background: none;
}
ol.ns_breadcrumb li,
ol.ns_breadcrumb li a {
  color: #000;
}
ol.ns_breadcrumb li a:hover {
  transform: translate(0, 0);
}
ol.ns_breadcrumb li a {
  text-decoration: none;
}
/*breadcrumb_end*/
/*top_start*/
h1.ns_top__im {
  margin: 0;
  padding: 0;
  border: none;
  background: #fff;
}
h1.ns_top__im .ns_commonSize {
  width: 100%;
  max-width: 100%;
  padding: 0;
}


/*top_end*/

/*nav_start*/
.ns_nav {
      width: clamp(300px, 43vw, 465px);
  position: fixed;
  top: 0;
  right: 0;
  align-self: flex-start;
  text-align: center;
  padding: 0;
  font-weight: 500;
  z-index: 998;
  transition: all .3s cubic-bezier(0.16, 1, 0.3, 1); /* easeOutExpo */
  margin-top: 50px;
	    filter: drop-shadow(8px 4px 4px rgba(0, 0, 0, 0.6));
}
.ns_nav_inner {
  color: #fff;
  position: relative;
  display: none;
  visibility: hidden;
  opacity: 0;
  transition: all .3s cubic-bezier(0.16, 1, 0.3, 1); /* easeOutExpo */
  top: 0; 
}


.ns_nav_inner:before {
      background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/nav_top.png) transparent no-repeat top left;
    top: -165px;
    content: "";
    height: 165px;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: -1;
    box-sizing: border-box;
}
.ns_nav_inner:after {
  background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/nav_bottom.png) transparent no-repeat bottom left;
  bottom: -165px;
  content: "";
  height: 165px;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: -1;
  box-sizing: border-box;
}
.ns_nav_inner > ul {
  box-sizing: border-box;
    border: 1px solid #000;
    background: #000;
    overflow: hidden;
    margin-top: 165px;
    padding: 0 40px 0 40px;
}

.ns_nav ul li:last-child {
  border-bottom: none;
}
.ns_nav_list {
font-size: clamp(14px, 2vw, 20px);
    line-height: 1.3;
    margin-bottom: 40px;
    text-align: left;
    letter-spacing: -0.05em;
	position: relative;
}
.ns_nav_list::before {
position: absolute;
    content: "";
    display: block;
    background-color: rgb(255 255 255 / .4);
    width: 100%;
    height: 1px;
    bottom: -20px;
}
.ns_nav_list:last-child::before {
    display: none;
}

.ns_nav_list > a {
	padding-left: 2em;
	position: relative;
}
.ns_nav_list > a::before {
    position: absolute;
    display: block;
    content: "";
    top: 0.3em;
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/nav_icon.svg) no-repeat center center / contain;
    width: 0.8em;
    height: 0.8em;
    margin-left: -1.5em;
    color: #fff;
	transition: 0.3s;
}
.ns_nav_list > a:hover::before {
	content: "";
    background: url("https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/nav_icon_hover.svg") no-repeat center center / contain;
}


.ns_nav ul li a {
  color: #fff;
}
.ns_nav ul li a:hover {
  color: #d1a024;
}
.ns_nav ul ul {
	    margin: 1em 0 0 1em;
}
.ns_nav_list_sub {
	margin-bottom: 15px;
	padding-left: 1em;
}
.ns_nav_list_sub a {
	text-indent: -1em;
    margin-left: 1em;
}


.ns_nav.ns_panelactive .ns_nav_inner {
  visibility: visible;
  display: block;
  opacity: 0;
  animation: slideIn 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

@keyframes slideIn {
  0% {
    transform: translateX(200px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
  }
  40%, 100% {
    opacity: 1;
  }
}


.ns_nav.ns_panelactive .ns_nav_inner ul  li.ns_nav_list {
  opacity: 0;
  animation: fadeIn 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;
  animation-delay: 0.12s;
}
@keyframes fadeIn {
  0% {
    transform: translateX(2em);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
	  opacity: 1;
  }
}
/*=============================
openbtn
=============================*/
.ns_openbtn {
  position: fixed;
	top: 60px;
  right: 40px;
  display: none;
  z-index: 999;
  
  cursor: pointer;
  margin-top: 50px;
}
.ns_openbtn_inner {
	position: relative;
	width: 50px;
  height: 50px;
}
.ns_openbtn_inner::before {
	position: absolute;
	content: "";
	display: block;
	background: #000;
	border: 1px solid #fff;
	width: 50px;
  height: 50px;
	transform: rotate(45deg);
box-sizing: border-box;
	box-shadow: 6px 3px 5px rgba(0, 0, 0, 0.3);
}



.ns_openbtn span {
display: block;
	position: absolute;
	left: 13px;
  width: 24px;
  height: 1px;
  background-color: #fff;
transition: all .5s;
}
.ns_openbtn span:nth-of-type(1) {
  top: 19px;
}
.ns_openbtn span:nth-of-type(2) {
  top: 25px;
}
.ns_openbtn span:nth-of-type(3) {
  bottom: 18px;
}

.ns_openbtn.ns_active span:nth-of-type(1) {
 -webkit-transform: translateY(6px) rotate(-45deg);
  transform: translateY(6px) rotate(-45deg);
}
.ns_openbtn.ns_active span:nth-of-type(2) {
  opacity: 0;
}
.ns_openbtn.ns_active span:nth-of-type(3) {
  -webkit-transform: translateY(-6px) rotate(45deg);
  transform: translateY(-6px) rotate(45deg);
}

.ns_openbtn.ns_fixed {
  display: block;
}

.ns_overlay {
  display: block;
  width: 100%;
  height: 100vh;
  position: fixed;
  right: 0;
  top: 50px;
  background: rgb(255 255 255 / .7);
  z-index: 902;
  opacity: 0;
  visibility: hidden;
  transition: all 200ms ease-in;
}
.ns_overlay.ns_active {
  display: block;
  opacity: 1;
  visibility: visible;
}
/*nav_end*/





/*intro_start*/

.ns_intro {
	position: relative;
	background-color: #000;
	color: #fff;
	padding: 60px 0 90px;
	z-index: 1;
}

.ns_intro::after {
	position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    display: block;
	background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/intro_bg.jpg) #000 repeat-x bottom left / contain;
	width: 100%;
    height: 109px;
	    z-index: -1;
}
.ns_intro__inner {
	text-align: center;
}
.ns_intro_txt {
	font-size: 18px;
	font-weight: 500;
	line-height: 2;
}
.ns_intro_txt span {
	color: #d1a024;
	font-weight: 500;
}
.ns_intro_txt:first-child {
	font-size: 26px;
	line-height: 1.5;
}
.ns_intro .ns_line {
    margin: 40px auto;
    padding: 0;
    width: 365px;
    border: none;
    height: 16px;
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/intro_line.png) repeat-x center left;
	opacity: 0.4;
}
/*intr_end*/
/*goods_start*/
.ns_mochidoru {
  background: #f5f1e7;
}
.ns_goods_01 .ns_goods__group.ns_commonSize, .ns_goods_03 .ns_goods__group.ns_commonSize {
  max-width: 1120px; 
  padding: 0 160px;
}

.ns_goods_01 .ns_goods__inner, .ns_goods_03 .ns_goods__inner {
 width: calc((100% - (70px * 1)) / 2);
}


.ns_goods__im {
  width: 100%;
}
.ns_goods__im img {
	filter: drop-shadow(3px 3px 2px rgba(0,0,0,0.3));
	transform: translateZ(0);
}

.ns_goods__inner:nth-of-type(n + 3) {
	margin-top: 60px;
}
.ns_goods_01 .ns_goods__inner:nth-of-type(2n), .ns_goods_03 .ns_goods__inner:nth-of-type(2n) {
	margin-left: 70px;
}

.ns_center .ns_goods__inner {
	margin-top: 60px;
}

.ns_goods_03 .ns_goods__inner:last-child {
   width: 100%;
   margin-left: 0;
}
.ns_goods_03 .ns_goods__inner:last-child .ns_goods__linkList li  {
    max-width: 365px;
    margin: 0 auto;
}
.ns_goods__detail {
  height: fit-content;
}

.ns_cpgoods {
	background: #fff;
}

.ns_goods_02 .ns_goods__im {
	margin-bottom: 30px;
}
.ns_goods_02 .ns_goods__im:nth-child(2) {
	padding-top: 30px;
	margin-bottom: 0;
	border-top: 1px solid #d1a024;
}
.ns_goods_02 .ns_goods__inner .ns_goods__linkList.ns_flex, .ns_goods_05 .ns_goods__inner .ns_goods__linkList.ns_flex, .ns_goods_06 .ns_goods__inner .ns_goods__linkList.ns_flex {
	    flex-wrap: nowrap;
}
.ns_goods_02 .ns_goods__inner .ns_goods__linkList li, .ns_goods_04 .ns_goods__inner .ns_goods__linkList li, .ns_goods_06 .ns_goods__inner .ns_goods__linkList li {
    max-width: 365px;
    margin: 0 auto;
}
.ns_goods_02 .ns_goods__inner .ns_goods__linkList:nth-child(2) li {
	width: calc((100% - (20px * 1)) / 2);
    max-width: 365px;
    margin: 20px 0 0;
}
.ns_goods_02 .ns_goods__inner .ns_goods__linkList:nth-child(2) {
    margin-top: 0;
}
.ns_goods_02 .ns_goods__inner .ns_goods__linkList:nth-child(2) li:nth-child(2) {
    margin-left: 20px;
}

.ns_goods_05 .ns_goods__inner .ns_goods__linkList li {
	width: calc((100% - (20px * 1)) / 2);
    max-width: 365px;
}
.ns_goods_05 .ns_goods__inner .ns_goods__linkList li:nth-child(2) {
    margin-left: 20px;
}
.ns_goods_06 .ns_goods__inner {
 width: calc((100% - (20px * 1)) / 2);
 max-width: 320px;
}



.ns_goods__linkList {
  margin-top: 30px;
}
.ns_goods__linkList > * {
  width: 100%;
}

.ns_goods__linkList > * a {
  position: relative;
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: space-between;
  background: #d1a024;
  padding: 0.5em;
  font-size: 20px;
  height: 100%;
  box-sizing: border-box;
  line-height: 1.3;
  border: 1px solid #000;
}
.ns_goods__linkList > * a:before {
  position: absolute;
  display: block;
  content: "";
  width: 0;
  height: 0;
  top: 50%;
  right: 0.5em;
  border-style: solid;
  border-width: 7.5px 0 7px 12px;
  border-color: transparent transparent transparent #000;
  transform: rotate(0deg) translate(0, -50%);
  transition: 0.3s;
}
.ns_goods__linkList > * a:hover {
	color: #fff;
	background: #000;
}
.ns_goods__linkList > * a:hover:before {
	border-color: transparent transparent transparent #fff;
}
.ns_goods__linkList .ns_txt {
  width: 100%;
  text-align: center;
  font-weight: 600;
  letter-spacing: -0.01rem;
}
.ns_goods__linkList .ns_txt span {
	display: inline-block;
}
.ns_goods_02 .ns_goods__inner .ns_goods__linkList.ns_flex, .ns_goods_05 .ns_goods__inner .ns_goods__linkList.ns_flex, .ns_goods_06 .ns_goods__inner .ns_goods__linkList.ns_flex {
     flex-wrap: wrap;
}

/*goods_end*/

.ns_figure {
	background: #f5f1e7;
}


/*relation_start*/
.ns_relation .ns_goods_06 .ns_commonSize {
    padding: 0 230px;
}

.ns_goods_06 {
	padding-top: 90px;
}
.ns_goods_06 h3.ns_txt {
	padding-top: 20px;
	font-size: 20px;
	text-align: center;
}

.ns_goods_06 .ns_goods__inner:nth-of-type(2n) {
    margin-left: 20px;
}
.ns_goods_06 .ns_goods__linkList {
    margin-top: 20px;
}
/*relation_end*/
.ns_areaBottom {
  background: #000;
  padding: 3px 0 3px;
  text-align: center;
  font-size: 14px;
	color: #fff;
}
.ns_areaBottom small {
}

/*contents_end*/
@media screen and (min-width: 641px) and (max-width: 1024px) {
  .SP,
  .SP a,
  img.SP {
    display: none;
  }
	.ns_middle {
	display: block;	
	}
  #wrapper {
    min-width: 100%;
  }
  .ns_commonSize {
    width: calc(100% - 80px);
    padding: 0;
  }
	
	.ns_goods_contents::before {
    position: fixed;
    content: "";
    display: block;
        width: clamp(80px, 6vw, 123px);
    height: 100%;
    top: 0;
    left: 0;
		margin-left: 0;
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/side_pattern_PC.png) repeat-y top right / contain;
    z-index: 1;
}
.ns_goods_contents::after {
    position: fixed;
    content: "";
    display: block;
        width: clamp(80px, 6vw, 123px);
    height: 100%;
    top: 0;
    right: 0;
	margin-right: 0;
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/side_pattern_PC.png) repeat-y top left / contain;
    z-index: 0;
}
	
	
	.ns_areaH2 {
    padding-bottom: 20vw;
}
	h2.ns_commonTitleH2 {
    padding-top: 9vw;
}
	.ns_title_bg_item_01 {
   position: absolute;
        width: 27vw;
        top: 4.7vw;
        left: 50%;
        margin-left: -68vw;
        z-index: -1;
}
.ns_title_bg_item_02 {
   position: absolute;
        width: 8vw;
        top: 4.7vw;
        right: 50%;
        margin-right: -50vw;
        z-index: -1;
}	
.ns_title_bg_item_03 {
            position: absolute;
        width: 9vw;
        top: 20vw;
        left: 50%;
        margin-left: -48vw;
        z-index: -1;
}	
.ns_title_bg_item_04 {
    position: absolute;
        width: 22vw;
        top: 15vw;
        right: 50%;
        margin-right: -57vw;
        z-index: -1;
}	
	
	
	
	
h3.ns_commonTitleH3 {
    margin: 0 auto 6vw;
    padding-top: 9vw;
	font-size: clamp(28px, 4.5vw, 36px);
}	
	
	h3.ns_commonTitleH3 .ns_kinds {
    font-size: clamp(20px, 3vw, 24px);
}
		
	.ns_intro {
		    padding: 6vw 0 9vw;
	}
	.ns_intro::after {
    height: 12vw;
}
	.ns_intro_txt {
	font-size: clamp(14px, 1.9vw, 18px);
	line-height: 1.8;
}
.ns_intro_txt span {
	color: #d1a024;
	font-weight: 500;
}
.ns_intro_txt:first-child {
	font-size: 22px;
	line-height: 1.3;
}
.ns_intro .ns_line {
     margin: 40px auto;
    padding: 0;
    width: 267px;
    border: none;
    height: 16px;
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/intro_line.png) repeat-x center left;
}
 .ns_nav {
           width: clamp(500px, 80vw, 650px);
	}
	.ns_nav_list {
    font-size: clamp(18px, 3vw, 24px);
}

.ns_nav_list > a:hover::before {
	content: "";
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/nav_icon.svg) no-repeat center center / contain;
}
.ns_nav ul li a:hover {
  color: #fff;
}	
	
  /*1024_goods_start*/
	
	
.ns_goods_01 .ns_goods__inner:nth-of-type(2n), .ns_goods_03 .ns_goods__inner:nth-of-type(2n) {
    margin-left: 3%;
}
	.ns_goods_02 .ns_goods__im {
    margin-bottom: 2vw;
}
.ns_goods_02 .ns_goods__im:nth-child(2) {
	padding-top: 3%;
}	
.ns_goods_03 .ns_goods__inner:last-child {
    width: 100%;
    margin-left: 0;
}	
	.ns_goods_01 .ns_goods__group.ns_commonSize, .ns_goods_03 .ns_goods__group.ns_commonSize {
    padding: 0;
}
	
	.ns_goods_01 .ns_goods__inner, .ns_goods_03 .ns_goods__inner {
    width: calc((100% - (3% * 1)) / 2);
}
	
	.ns_goods_03 .ns_goods__inner:last-child .ns_goods__linkList li {
    width: calc((100% - (3% * 1)) / 2);
		max-width: none;
    margin: 0 auto;
}

  [class*="ns_goods__group"]:nth-of-type(n + 2) {
    margin-top: 14vw;
  }

  .ns_goods__detail {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  .ns_goods__im {
    max-width: 100%;
  }

  .ns_goods__linkList {
    margin-top: 4vw;
  }
  .ns_goods__linkList > * {
    box-sizing: border-box;
  }
  .ns_goods__linkList > :nth-of-type(n + 2) {
    margin-top: 0;
    margin-left: 40px;
  }
 

  .ns_goods__linkList > * a {
	font-size: clamp(14px, 2.5vw, 22px);
  }
  .ns_goods__linkList > * a::before {
    border-width: 7px 0 7px 12px;
  }
  
  .ns_goods__linkList .ns_txt {
    width: 100%;
    letter-spacing: 0;
  }
	.ns_goods__linkList > * a:hover {
	color: #fff;
	background: #000;
}
.ns_goods__linkList > * a:hover:before {
	border-color: transparent transparent transparent #fff;
}
	.ns_goods__linkList > * a:hover {
	color: #000;
	background: #d1a024;
}
.ns_goods__linkList > * a:hover:before {
	border-color: transparent transparent transparent #000;
}
  /*1024_goods_end*/
  /*1024_relation_start*/
  .ns_relation .ns_goods_06 .ns_commonSize {
   padding: 0;
}
/*1024_relation_end*/
}
@media screen and (max-width: 640px) {
  .ns_ContentsWrapAll {
    overflow: hidden;
    box-sizing: border-box;
    margin-top: -25px;
    -webkit-text-size-adjust: 100%;
    font-size: clamp(14px, 3.5vw, 16px);
  }
  .ns_ContentsWrapAll {
  }
  .ns_ContentsWrapAll img {
    width: 100%;
    display: block;
  }
  .ns_commonSize {
    width: 90%;
    padding: 0;
    box-sizing: border-box;
  }
  /*SP_common_start*/
	
.ns_goods_contents::before {
    width: clamp(20px, 10vw, 50px);
	left: 0;
	margin-left: 0;
	background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/side_pattern_PC.png) repeat-y top right / contain;
}
.ns_goods_contents::after {
    width: clamp(20px, 10vw, 50px);
	right: 0;
	margin-right: 0;
	background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/side_pattern_PC.png) repeat-y top left / contain;
}
  h2.ns_commonTitleH2 {
    box-sizing: border-box;
    padding-top: 12vw;
    font-size: 7.5vw;
  }
  h2.ns_commonTitleH2 picture {
    max-width: initial;
    height: 8.5vw;
    width: auto;
  }
h2.ns_commonTitleH2 .ns_commonSize::before {
    top: 3%;
    height: 2vw;
}
.ns_title_bg_item_01 {
        position: absolute;
        width: 27vw;
        top: 24vw;
        left: 50%;
        margin-left: -68vw;
        z-index: -1;
    }
    .ns_title_bg_item_02 {
        position: absolute;
        width: 8vw;
        top: 18vw;
        right: 50%;
        margin-right: -50vw;
        z-index: -1;
    }
    .ns_title_bg_item_03 {
        position: absolute;
        width: 9vw;
        top: 35vw;
        left: 50%;
        margin-left: -48vw;
        z-index: -1;
    }
    .ns_title_bg_item_04 {
        position: absolute;
        width: 22vw;
        top: 30vw;
        right: 50%;
        margin-right: -57vw;
        z-index: -1;
    }
	
	
  h3.ns_commonTitleH3 {
    margin-bottom: 5vw;
    padding-top: 12vw;
    font-size: 5vw;
  }
	h3.ns_commonTitleH3 .ns_kinds {
    font-size: 3.5vw;
}
  .ns_areaH2 {
    padding-bottom: 18vw;
  }
  .SP,
  .SP a,
  img.SP {
    display: block;
  }
  .PC,
  .PC a,
  img.PC {
    display: none;
  }
	.ns_middle {
	display: block;	
	}
  /*SP_common_end*/
  /*SP_contents_start*/
  /*SP_breadcrumb_start*/
  .ns_breadcrumb {
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%;
    display: flex;
    padding-left: 2vw;
  }
  .ns_breadcrumb > * {
    float: initial;
    font-size: 2.8vw;
  }
  ol.ns_breadcrumb li:nth-of-type(n + 2) {
    padding-left: 15px;
    background-position: 1vw center;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
  }
  ol.ns_breadcrumb li:before {
    top: 50%;
    transform: rotate(45deg) translate(0, -50%);
    left: 0vw;
  }
  .ns_breadcrumb > * a {
  }
  /*SP_breadcrumb_end*/

  /*top_start*/
 
  h1.ns_top__im .ns_commonSize {
    width: 100%;
  }
  
  /*SP_top_end*/
	
	
	.ns_nav {
		width: 100%;
	}
	
	.ns_nav_inner:before {
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/nav_top.png) transparent no-repeat top left;
    top: -130px;
    content: "";
    height: 130px;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: -1;
    box-sizing: border-box;
}
	.ns_nav_inner:after {
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/nav_bottom.png) transparent no-repeat bottom left;
    bottom: -130px;
    content: "";
    height: 130px;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: -1;
    box-sizing: border-box;
}
	.ns_nav_inner > ul {
    box-sizing: border-box;
    border: 1px solid #000;
    background: #000;
    overflow: hidden;
    margin-top: 130px;
    padding: 0 8vw 0 8vw;
}

	.ns_nav_list {
    font-size: clamp(14px, 4.5vw, 22px);
		    margin-bottom: 9vw;
}
	.ns_nav_list > a:hover::before {
		content: "";
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/nav_icon.svg) no-repeat center center / contain;
}
.ns_nav ul li a:hover {
  color: #fff;
}	
	.ns_nav_list::before {
    bottom: -4.5vw;
}
	.ns_nav_list_sub {
    margin-bottom: 3vw;
}
	.ns_openbtn {
    position: fixed;
    top: clamp(20px, 15vw, 50px);
    right: 20px;
    display: none;
    z-index: 999;
    cursor: pointer;
    margin-top: 50px;
}
	
	
	
	
 .ns_intro {
    padding: 10vw 0 12vw;
}
	.ns_intro::after {
    height: clamp(50px, 16vw, 90px);
}
.ns_intro_txt {
	font-size: clamp(14px, 3.5vw, 18px);
	line-height: 1.5;
}
.ns_intro_txt span {
	color: #d1a024;
	font-weight: 500;
}
.ns_intro_txt:first-child {
	font-size: clamp(14px, 4vw, 20px);
	line-height: 1.4;
}
  .ns_intro .ns_line {
    margin: 5vw auto;
    padding: 0;
    width: 221px;
    border: none;
    height: 12px;
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/intro_line.png) repeat-x center left / contain;
}
  /*SP_goods_start*/
  .ns_goods_02, .ns_goods_03 {
    padding-bottom: 12vw;
}

	.ns_goods_01 .ns_goods__inner, .ns_goods_03 .ns_goods__inner {
    width: calc((100% - (3% * 1)) / 2);
}	
	.ns_goods_01 .ns_goods__inner:nth-of-type(2n), .ns_goods_03 .ns_goods__inner:nth-of-type(2n) {
    margin-left: 3%;
}
.ns_goods_03 .ns_goods__inner:last-child {
    width: 100%;
    margin-left: 0;
}
	.ns_goods_01 .ns_goods__group.ns_commonSize, .ns_goods_03 .ns_goods__group.ns_commonSize {
    padding: 0;
}
	.ns_goods_02 .ns_goods__inner .ns_goods__linkList:nth-child(2) li:nth-child(2) {
    margin-left: 0;
}
.ns_goods_02 .ns_goods__inner .ns_goods__linkList li, .ns_goods_04 .ns_goods__inner .ns_goods__linkList li, .ns_goods_06 .ns_goods__inner .ns_goods__linkList li {
	width: 100%;
    max-width: none;
    margin: 0 auto;
}	
	
	.ns_goods__inner:nth-of-type(n + 3) {
    margin-top: 7vw;
}
.ns_center .ns_goods__inner {
    margin-top: 7vw;
}	
	.ns_goods_03 .ns_goods__inner:last-child .ns_goods__linkList li {
    width: 100%;
    max-width: none;
    margin: 0 auto;
}
	.ns_goods_05 .ns_goods__inner .ns_goods__linkList li:nth-child(2) {
    margin-left: 0;
}

  .ns_goods__im {
    max-width: 100%;
  }
 
  .ns_goods__linkList {
    display: flex;
    margin-top: 4vw;
  }
  .ns_goods__linkList > * {
    box-sizing: border-box;
  }
  .ns_goods__linkList > :nth-of-type(n + 2) {
    margin-top: 0;
    margin-left: 2vw;
  }
 

  .ns_goods__linkList > * a {
	  font-size: clamp(14px, 4vw, 20px);
  }
  .ns_goods__linkList > * a::before {
    border-width: 1.2vw 0 1.2vw 2vw;
  }
	.ns_goods__linkList > * a:hover {
	color: #000;
	background: #d1a024;
}
.ns_goods__linkList > * a:hover:before {
	border-color: transparent transparent transparent #000;
}
  .ns_goods__linkList .ns_txt {
    width: 100%;
    letter-spacing: 0;
  }

	
.ns_goods__group .ns_goods__linkList > * {
    margin-top: 0;
}	
	.ns_goods_02 .ns_goods__inner .ns_goods__linkList.ns_flex, .ns_goods_05 .ns_goods__inner .ns_goods__linkList.ns_flex, .ns_goods_06 .ns_goods__inner .ns_goods__linkList.ns_flex {
    flex-direction: column;
}
	.ns_goods_02 .ns_goods__inner .ns_goods__linkList:nth-child(2) li {
    width: 100%;
    max-width: none;
    margin: 3vw auto 0;
}
	.ns_goods_05 .ns_goods__inner .ns_goods__linkList li {
    width: 100%;
    max-width: none;
    margin: 0 auto;
}
	.ns_goods_05 .ns_goods__inner .ns_goods__linkList li:last-child {
    margin: 3vw auto 0;
}
.ns_goods_06 {
    padding-top: 12vw;
}
.ns_line {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    border: none;
    height: 12px;
    background: url(https://7net-img.omni7.jp/cm/0001/sc_image/inc/pc/special/250811kimetsu/line.png) repeat-x center center / contain;
}	
	
  /*SP_goods_end*/
  
  /*SP_relation_start*/
  
	.ns_relation .ns_goods_06 .ns_commonSize {
    padding: 0;
}
	.ns_goods_06 .ns_goods__linkList {
    margin-top: 4vw;
}
	.ns_goods_06 h3.ns_txt {
    padding-top: 4vw;
    font-size: 3vw;
}
	
  /*SP_relation_end*/
  /*hover_start*/
  .ns_ContentsWrapAll a:hover,
  .ns_ticket__bt .NS_general_7ticket:hover {
    transform: translate(0px, 0px);
  }
  .ns_ContentsWrapAll .ns_anc a:hover {
    transform: translate(0px, 0px);
    transition: 0.3s;
  }
  /*hover_end*/
  .ns_copy {
    font-size: 10px;
    padding: 30vw 0 2vw;
  }
  /*SP_contents_end*/
}
