﻿@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500&display=swap";
@media screen and (max-width:767px) {
  .c-content img {
    width: 100%
  }
}

.u-ta-c {
  text-align: center
}

.l-headerTop {
  background-color: #654397
}

.l-headerTop_navi_home {
  fill: #fff
}

.l-header_storeBtn {
  border-left-color: #654397;
  background-color: #654397
}

.l-header_menuBtn {
  background-color: #654397
}

.l-headerBtm_navi>li.-cart {
  color: #654397
}

.l-spNavi_list li a.is-active {
  background-color: rgba(117, 60, 190, 0.1);
  color: #753cbe
}

.l-headerBtm_navi>li a .small {
  font-size: .8em !important
}

.l-headerBtm_navi>li.navi-tape>a:before {
  opacity: 1;
}

.l-headerBtm_navi>li>a:before,
.l-headerBtm_navi>li .trigger:before {
  content: '';
  height: 3px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: #654397;
  z-index: 5;
  opacity: 0
}

.l-spNavi_header {
  border-bottom-color: #654397
}

.l-spNavi_list li a:before {
  background-color: #654397
}

.l-spNavi_list li a.is-active {
  background-color: rgba(43, 134, 91, .1);
  color: #654397
}

.l-spNavi_list li .trigger:before,
.l-spNavi_list li .trigger:after {
  background-color: #654397
}

.l-spNavi_list li>ul li a {
  padding-left: 56px;
  position: relative
}

.l-spNavi_list li>ul li a::after {
  content: "";
  width: 8px;
  height: 1px;
  background: #333;
  position: absolute;
  top: 27px;
  left: 38px
}

.l-spNavi_close {
  border-color: #654397
}

.l-spNavi_close:before {
  background-color: #654397
}

.l-bottomNavi_home {
  fill: #654397
}

.l-bottomNavi_list {
  align-items: center
}

.c-content a {
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}

.c-heading_contents {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  justify-content: space-between;
  color: #1d2088;
  font-weight: 600
}

.c-heading_contents--white {
  color: #fff
}

.c-heading_contents::before,
.c-heading_contents::after {
  display: inline-block;
  width: 50%;
  background: #1d2088;
  content: ""
}

.c-heading_contents--white::before,
.c-heading_contents--white::after {
  background: #fff
}

.c-heading_contents>span {
  -webkit-box-flex: 0;
  flex-grow: 0;
  flex-shrink: 0;
  text-align: center
}

.c-heading_contents>span span {
  display: block
}

.c-heading_lv1 {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  justify-content: space-between;
  color: #1d2088
}

.c-heading_lv1::before,
.c-heading_lv1::after {
  display: inline-block;
  width: 50%;
  background: #1d2088;
  content: ""
}

.c-heading_lv1>span {
  -webkit-box-flex: 0;
  flex-grow: 0;
  flex-shrink: 0;
  text-align: center
}

.c-heading_lv1>span span {
  display: block
}

.c-heading_lv2 {
  margin: 15px 0 8px;
  color: #1d2088;
  font-size: 1.7rem
}

.c-pageTtl {
  position: relative
}

.c-pageTtl_txt {
  color: #654397;
  line-height: 1.3
}

.c-table {
  width: 100%;
  table-layout: fixed
}

.c-table th,
.c-table td {
  border-left: 1px solid #d3d3d3;
  text-align: center;
  vertical-align: middle
}

.c-table thead th {
  background: #1d2088;
  color: #fff
}

.c-table tbody td {
  border-bottom: 1px solid #d3d3d3
}

.c-bgArea {
  margin-top: 45px;
  padding-top: 45px;
  padding-bottom: 50px;
  background: #f2f2fd
}

.c-buy {
  background-image: -webkit-linear-gradient(left, rgba(247, 178, 14, 0.8) 0%, rgba(255, 236, 51, 0.8) 50%, rgba(247, 178, 14, 0.8) 100%);
  background-image: linear-gradient(90deg, rgba(247, 178, 14, 0.8) 0%, rgba(255, 236, 51, 0.8) 50%, rgba(247, 178, 14, 0.8) 100%)
}

.c-buy_ttl {
  margin: 0 auto
}

.c-buy_txt {
  margin: 10px 0 0;
  font-weight: bold;
  text-align: center
}

.c-buy_img img {
  box-shadow: 0px 0px 29px rgba(143, 77, 0, .9)
}

.c-buy_img figcaption {
  margin: 10px 0 0;
  font-size: .8rem;
  line-height: 1.5
}

.c-store-modal {
  display: none;
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.c-store-modal_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .8)
}

.c-store-modal_inner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #fff
}

.c-store-modal_inner ul {
  width: 200px;
  margin: 0 auto 20px
}

.c-store-modal_inner ul li {
  margin: 7px 0 0
}

.c-store-modal_ttl {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  font-size: 2.16rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px
}

@media screen and (max-width:767px) {
  .c-store-modal_ttl {
    margin-bottom: 30px
  }
}

.c-store-modal_subttl {
  text-align: center;
  font-size: 2.2rem;
  margin-bottom: 10px
}

.c-store-modal_ttl::before {
  display: inline-block;
  width: 24px;
  height: 25px;
  margin: 0 9px 0 0;
  background: url(/brand/nightmin/kanpounightmin/img/common/ico_cart.svg) no-repeat center;
  background-size: contain;
  content: ""
}

.c-store-modal_ttl02 {
  margin-bottom: 10px;
  font-size: 2.2rem;
  line-height: 1.4;
  text-align: center
}

@media screen and (max-width:767px) {
  .c-store-modal_ttl02 {
    font-size: 1.8rem
  }
}

.c-store-modal_btn {
  box-sizing: border-box;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  width: 135px;
  height: 30px;
  margin: 31px auto 0;
  border: 1px solid #fff;
  border-radius: 2px;
  font-size: 1.3rem
}

@media print,
screen and (min-width: 768px) {
  .l-headerBtm_logo {
    width: 210px
  }

  .l-headerBtm_navi>li>a:hover:before,
  .l-headerBtm_navi>li>a:active:before,
  .l-headerBtm_navi>li>a.is-active:before {
    background-color: #654397
  }

  .l-headerBtm_navi>li .trigger:hover:before,
  .l-headerBtm_navi>li .trigger:active:before,
  .l-headerBtm_navi>li .trigger.is-active:before {
    background-color: #654397
  }

  .l-headerBtm_navi>li ul {
    background: #fff
  }

  .l-headerBtm_navi>li:hover ul {
    display: block
  }

  .l-header_navi_cart {
    fill: #654397
  }

  .l-content {
    min-width: 1068px
  }

  .l-share_navi dt {
    background-color: #654397;
    color: #fff
  }

  .c-content a:hover {
    opacity: .8
  }

  .c-inner02 {
    width: 858px;
    margin: 0 auto
  }

  .c-inner03 {
    width: 1028px;
    margin: 0 auto
  }

  .c-heading_contents {
    font-size: 3.8rem;
    margin-bottom: 50px
  }

  .c-heading_contents::before,
  .c-heading_contents::after {
    height: 2px
  }

  .c-heading_contents>span {
    margin: 0 21px
  }

  .c-heading_contents>span span {
    margin-top: -18px;
    font-size: 2rem
  }

  .c-heading_lv1 {
    margin-bottom: 25px;
    font-size: 3.4rem;
    font-weight: 900
  }

  .c-heading_lv1::before,
  .c-heading_lv1::after {
    height: 3px
  }

  .c-heading_lv1>span {
    margin: 0 21px
  }

  .c-heading_lv1>span span {
    margin-top: -18px;
    font-size: 2rem
  }

  .c-heading_lv2 {
    margin: 50px 0 8px;
    font-size: 2.1rem
  }

  .c-pageTtl {
    height: 300px;
    margin-bottom: 48px;
    background: #f2f2fd no-repeat center top
  }

  .c-pageTtl_txt {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
    height: 300px;
    padding-left: 515px;
    font-size: 3.8rem
  }

  .c-table {
    border: 2px solid #d3d3d3
  }

  .c-table th,
  .c-table td {
    padding: 13px 5px;
    line-height: 1.5
  }

  .c-table tbody td {
    padding: 26px 5px
  }

  .c-bgArea {
    margin-top: 90px;
    padding-bottom: 84px
  }

  .c-text01 {
    text-align: center
  }

  .c-buy {
    padding: 60px 0
  }

  .c-buy_ttl {
    width: 335px
  }

  .c-buy_box {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    flex-direction: row-reverse;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    justify-content: space-between;
    width: 760px;
    margin: 0 auto
  }

  .c-buy_txt {
    font-size: 2rem;
    line-height: 1.5
  }

  .c-buy_img {
    width: 340px
  }

  .c-store-modal_inner ul {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    justify-content: center;
    width: 789px;
    margin: 0 auto 40px
  }

  .c-store-modal_inner ul li {
    width: 237px;
    margin: 27px 13px 0
  }

  .c-store-modal_inner ul li:nth-of-type(-n+3) {
    margin-top: 0
  }

  .c-store-modal_ttl {
    font-size: 3.2rem
  }

  .c-store-modal_ttl::before {
    width: 34px;
    height: 36px;
    margin-right: 17px
  }

  .c-store-modal_btn {
    width: 180px;
    height: 40px;
    margin: 61px auto 0;
    border-radius: 4px;
    font-size: 1.7rem;
    cursor: pointer;
    -webkit-transition: opacity .3s;
    transition: opacity .3s
  }

  .c-store-modal_btn:hover {
    opacity: .8
  }
}

@media screen and (max-width: 767px) {
  .l-headerBtm_logo {
    width: 88px
  }

  .l-headerBtm_logo_copy {
    margin-bottom: 5px
  }

  .c-content {
    font-size: 1.4rem;
    line-height: 1.78
  }
}

@media screen and (max-width: 767px)and (max-width:767px) {
  .c-content {
    font-size: 3.7333333333vw
  }
}

@media screen and (max-width: 767px) {
  .c-inner01 {
    padding-right: 9px;
    padding-left: 9px
  }

  .c-inner02 {
    padding-right: 18px;
    padding-left: 18px
  }

  .c-inner03 {
    padding-right: 18px;
    padding-left: 18px
  }

  .c-heading_contents {
    font-size: 6.5vw;
    line-height: 1.3;
    margin-bottom: 8vw
  }

  .c-heading_contents::before,
  .c-heading_contents::after {
    height: 2px
  }

  .c-heading_contents>span {
    margin: 0 7px
  }

  .c-heading_contents>span span {
    font-size: 17px
  }

  .c-heading_lv1 {
    margin-bottom: 10px;
    font-size: 2.2rem;
    line-height: 1.3
  }

  .c-heading_lv1::before,
  .c-heading_lv1::after {
    height: 2px
  }

  .c-heading_lv1>span {
    margin: 0 7px
  }

  .c-heading_lv1>span span {
    font-size: 17px
  }

  .c-pageTtl {
    margin-bottom: 23px;
    padding-top: 34.66667vw;
    background: #f2f2fd no-repeat center top;
    background-size: 100% auto
  }

  .c-pageTtl_txt {
    margin-right: -9px;
    margin-left: -9px;
    padding-top: 10px;
    padding-bottom: 10px;
    background: #1d2088;
    color: #fff100;
    font-size: 2.5rem;
    text-align: center
  }

  .c-table {
    border: 1px solid #d3d3d3
  }

  .c-table th,
  .c-table td {
    padding: 11px 5px;
    line-height: 1.21
  }

  .c-table_scroll {
    width: 100%
  }

  .c-table_scroll:before {
    content: "※こちらの表は横スクロールできます"
  }

  .c-table_scroll>div {
    overflow: auto;
    white-space: nowrap
  }

  .c-table_scroll .c-table {
    width: auto;
    word-break: keep-all
  }

  .c-buy {
    padding: 38px 0
  }

  .c-buy_ttl {
    width: 64.26667vw
  }

  .c-buy_txt {
    font-size: 1.6rem;
    line-height: 1.31
  }

  .c-buy_img {
    width: 65.2vw;
    margin: 20px auto 0
  }

  .c-store-modal_inner {
    overflow: auto;
    height: 100%;
    padding: 40px 0
  }
}

.l-inner {
  position: relative
}

.c-ttl-01 {
  text-align: center;
  font-size: 4rem;
  font-weight: bold;
  color: #654397;
  padding-bottom: 25px;
  margin-bottom: 40px;
  line-height: 1.3;
  border-bottom: 2px solid #654397
}

@media screen and (max-width:767px) {
  .c-ttl-01 {
    width: 92vw;
    font-size: 7.2vw;
    padding-bottom: 3.3333333333vw;
    margin:0 auto 10vw auto
  }
}

.c-ttl-01 span {
  display: block;
  font-size: 22px;
  font-weight: bold;
  margin-top: 12px
}

@media screen and (max-width:767px) {
  .c-ttl-01 span {
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw
  }
}

.c-ttl-01 sup {
  font-size: 2.3rem
}

@media screen and (max-width:767px) {
  .c-ttl-01 sup {
    font-size: 2.6666666667vw
  }
}

.c-ttl-02 {
  color: #654397;
  background: #f1f7fc;
  font-weight: bold;
  font-size: 26px;
  line-height: 1.8;
  padding: .3em 0 .3em .7em;
  position: relative;
  margin-bottom: 40px;
  border-left: 7px solid #654397
}

@media screen and (max-width:767px) {
  .c-ttl-02 {
    font-size: 4.2666666667vw;
    padding: .6666666667vw 0 .6666666667vw 3.3333333333vw;
    margin-bottom: 5.3333333333vw
  }
}

.c-ttl-03 {
  font-weight: bold
}

@media screen and (max-width:767px) {
  .c-ttl-03 {
    margin-bottom: 2vw;
    font-size: 3.7333333333vw
  }
}

@media print,
screen and (min-width:768px) {
  .p-mv {
    height: 300px;
    background: #f1f7fc;
    margin-bottom: 80px
  }
}

@media screen and (max-width:767px) {
  .p-mv {
    margin-bottom: 9.3333333333vw
  }
}

@media print,
screen and (min-width:768px) {
  .p-mv__inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center
  }
}

@media screen and (max-width:767px) {
  .p-mv__inner {
    padding: 0
  }
}

.p-mv__ttl {
  font-size: 40px;
  letter-spacing: 6px;
  line-height: 1.8;
  color: #654397;
  font-weight: 500
}

.conversion {
  background: #fffae4;
  padding: 20px 50px 40px;
  margin-top: 80px;
  text-align: center
}

@media screen and (max-width:767px) {
  .conversion {
    padding: 6.6666666667vw 0 9.3333333333vw;
    margin: 13.3333333333vw 0 0
  }
}

.conversion__ttl {
  font-size: 26px;
  font-weight: bold;
  letter-spacing: 1px;
  color: #e24c4b;
  margin-bottom: 20px
}

@media screen and (max-width:767px) {
  .conversion__ttl {
    font-size: 5.3333333333vw;
    margin-bottom: 5.3333333333vw
  }
}

.conversion-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 60px
}

@media screen and (max-width:767px) {
  .conversion-list {
    gap: 2.6666666667vw
  }
}

.conversion-list li {
  width: 230px
}

@media screen and (max-width:767px) {
  .conversion-list li {
    width: 66.6666666667vw
  }
}

.conversion-list li a {
  position: relative;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 65px;
  border-radius: 3px;
  border: 2px solid #ff3938;
  transition: all 400ms ease-in-out
}

@media screen and (max-width:767px) {
  .conversion-list li a {
    height: 17.3333333333vw
  }
}

.conversion-list li a::before {
  content: "";
  background-color: #ff3938;
  position: absolute;
  top: 50%;
  right: 15px;
  width: 15px;
  height: 15px;
  border-radius: 100%;
  transform: translateY(-50%);
  transition: all 400ms ease-in-out;
  z-index: 1
}

@media screen and (max-width:767px) {
  .conversion-list li a::before {
    right: 4vw;
    width: 4vw;
    height: 4vw
  }
}

.conversion-list li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: translateY(-50%) rotate(45deg);
  transition: all 400ms ease-in-out;
  z-index: 2
}

@media screen and (max-width:767px) {
  .conversion-list li a::after {
    right: 5.44vw;
    width: 1.6vw;
    height: 1.6vw;
    border-width: .5333333333vw
  }
}

@media print,
screen and (min-width:768px) {
  .conversion-list li a:hover {
    background-color: #fff3f8;
  }

  .conversion-list li a:hover::before {
    background-color: #fff
  }

  .conversion-list li a:hover::after {
    border-top: 2px solid #ff3938;
    border-right: 2px solid #ff3938
  }
}

@media screen and (max-width:767px) {
  .conversion-list li a img {
    height: 13.3333333333vw;
    width: auto
  }
}

.conversion--brush .conversion__ttl {
  color: #654397
}

.conversion--brush .conversion-list li a {
  height: 61px;
  border-color: #654397
}

.conversion--brush .conversion-list li a::before {
  background-color: #654397
}

.conversion--brush .conversion-list li a:hover {
  background-color: #a9c7f2
}

.conversion--brush .conversion-list li a:hover::before {
  background-color: #fff
}

.conversion--brush .conversion-list li a:hover::after {
  border-color: #654397
}

@media screen and (max-width:767px) {
  .conversion--modal {
    background: none;
    padding: 0
  }

  .conversion--modal>div {
    position: fixed;
    background: #ccc;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100000000000;
    display: flex;
    align-content: center;
    justify-content: center;
    flex-wrap: wrap;
    display: none
  }

  .conversion--modal .conversion__ttl {
    background: #fed12f;
    color: #fff;
    width: 72vw;
    margin: 0 auto;
    border-radius: 100px;
    font-size: 4.2666666667vw;
    padding: 2.6666666667vw 0
  }
}

.c-content #contentsWrap>section {
  padding: 90px 0
}

@media screen and (max-width:767px) {
  .c-content #contentsWrap>section {
    padding: 12vw 0
  }
}

@media print,
screen and (min-width:768px) {
  .c-content .inner {
    width: 1028px;
    margin: 0 auto
  }
}

@media screen and (max-width:767px) {
  .c-content .inner {
    padding: 0;
  }
}

.c-content .banner_box {
  padding: 40px 0;
  background: linear-gradient(0deg, rgb(59, 35, 101) 0%, rgb(84, 49, 143) 100%)
}

@media screen and (max-width:767px) {
  .c-content .banner_box {
    padding: 8vw 5.3333333333vw;
  }
}

.c-content .banner_box a {
  background-color: #fff;
  color: #654397;
  font-weight: 700
}

@media print,
screen and (min-width:768px) {
  .c-content .banner_box a {
    height: 90px
  }
}

.c-content .banner_box a::before {
  background-color: #654397
}

.c-content .banner_box a::after {
  border-color: #fff
}

.c-content .banner_box a span::after {
  background-image: url(/brand/nightmin/kanpounightmin/img/common/ico_cart_02.svg)
}

.c-content .mv-sub {
  font-size: 4.2rem;
  background: #654397;
  color: #fff
}

@media screen and (max-width:767px) {
  .c-content .mv-sub {
    font-size: 6.1333333333vw
  }
}

.c-content .mv-sub .inner {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 200pxc-btn-01
}

@media screen and (max-width:767px) {
  .c-content .mv-sub .inner {
    height: 33.3333333333vw
  }
}

.c-content .c-btn-01 {
  background: #654397;
  color: #fff;
  width: 500px;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.8rem;
  font-weight: 500;
  flex-direction: column;
  line-height: 1.4;
  border-radius: 10px;
  margin: 0 auto;
  position: relative
}

@media screen and (max-width:767px) {
  .c-content .c-btn-01 {
    width: 100%;
    height: 16vw;
    font-size: 4.8vw;
    border-radius: 1.3333333333vw
  }
}

.c-content .c-btn-01 span {
  position: relative;
  font-size: 2.4rem
}

@media screen and (max-width:767px) {
  .c-content .c-btn-01 span {
    font-size: 4vw
  }
}

.c-content .c-btn-01::before {
  content: "";
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  top: calc(50% - 12px);
  right: 20px
}

@media screen and (max-width:767px) {
  .c-content .c-btn-01::before {
    width: 4.4vw;
    height: 4.4vw;
    top: calc(50% - 2.1333333333vw);
    right: 2.6666666667vw
  }
}

.c-content .c-btn-01::after {
  content: "";
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #654397;
  border-right: 2px solid #654397;
  position: absolute;
  top: calc(50% - 4px);
  right: 29px;
  transform: rotate(-45deg)
}

@media screen and (max-width:767px) {
  .c-content .c-btn-01::after {
    width: 1.6vw;
    height: 1.6vw;
    top: calc(50% - .8vw);
    right: 4.2666666667vw
  }
}

@media print,
screen and (min-width:768px) {
  .c-content .c-btn-web span {
    font-size: 2.8rem;
    padding-left: 50px
  }
}

@media screen and (max-width:767px) {
  .c-content .c-btn-web span {
    font-size: 4.8vw;
    padding-left: 9.3333333333vw
  }
}

.c-content .c-btn-web span::after {
  content: "";
  width: 38px;
  height: 38px;
  background: url(/brand/nightmin/kanpounightmin/img/common/ico_cart_01.svg) no-repeat center/contain;
  position: absolute;
  top: -1px;
  left: 0
}

@media screen and (max-width:767px) {
  .c-content .c-btn-web span::after {
    width: 6.8vw;
    height: 6.8vw;
    top: -.5333333333vw
  }
}

.l-headerBtm_navi>li.navi-tape>a {
  font-weight: bold
}

.page-character .l-headerBtm_navi>li.navi-tape li.navi-tape-character,
.page-problem .l-headerBtm_navi>li.navi-tape li.navi-tape-problem {
  font-weight: bold
}

.l-spNavi_list>li.navi-tape {
  background-color: rgba(43, 134, 91, .1)
}

.l-spNavi_list>li.navi-tape>a {
  font-weight: bold;
  color: #54318f
}

.page-character .l-spNavi_list>li.navi-tape li.navi-tape-character,
.page-problem .l-spNavi_list>li.navi-tape li.navi-tape-problem {
  font-weight: bold
}