@charset "UTF-8";
/*=================================
	overwrite 
===================================*/
.item-url {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

#viola .box-3 .spec {
  min-height: 320px;
}

#viola .item-url a {
  color: #fff;
  background: #3f57af;
}

#viola .box-3 .icon,
#viola .box-2 .icon {
  color: #fff;
  /* background: #3f57af; */
  background: #5f72b8;
}

#viola .box-3 .type .icon,
#viola .box-2 .type .icon {
  /*
  color: #fff;
  background: #af9d75;
  */
  font-size: 11px;
  padding: 0 10px;
  color: #5f72b8;
  background: #d9e0f7;
}

#cello .box-3 .spec {
  min-height: 260px;
}

#cello .item-url a {
  color: #fff;
  background: #cc564b;
}

#cello .box-3 .icon {
  color: #fff;
  background: #be756f;
}

#cello .box-3 .type .icon {
  color: #fff;
  background: #af9d75;
}

@media print, screen and (max-width: 768px) {
  #viola .box-3 .spec {
    min-height: auto;
  }
  #cello .box-3 .spec {
    min-height: auto;
  }
}
/*=================================
	common
===================================*/
article {
  font-size: 1.4rem;
}

.bg_va {
  background: url(../img/bg_va.png) repeat;
}

.bg_vc {
  background: url(../img/bg_vc.png) repeat;
}

.bg_eve {
  background: url(../img/bg_eve.png) repeat;
}

article a {
  transition: 0.2s linear;
}

article a:hover {
  filter: alpha(opacity=60);
}

.category {
  background: #fff;
  margin: auto auto 30px;
  padding-bottom: 30px;
  border-radius: 3px;
  overflow: hidden;
}

/* .category .note {
    font-size: 12px;
    width: 95%;

} */
.andmore {
  text-align: center;
  padding: 1em;
  border-radius: 0.5em;
  border: #b10015 thin solid;
}

.andmore p {
  color: #000;
}

.gray {
  color: #999;
}

.wf-sawarabi-mincho {
  font-family: "Noto Serif JP", serif;
}

@media print, screen and (max-width: 768px) {
  .category {
    width: 95%;
  }
}
/*=================================
	// id #title
===================================*/
#title {
  position: relative;
  margin-bottom: 1.5em;
}

#title .inside {
  width: 98%;
  /* max-width: 1200px; */
  max-width: 1230px;
  margin: auto;
  position: relative;
}

#title .inside2.flexbox {
  margin-bottom: 30px;
  flex-direction: row-reverse;
}

#title .txtbox {
  /* width: 54%; */
  width: 56%;
}

#h1_pc {
  width: 100%;
  max-width: 648px;
  display: block;
  /*    border: #f00 thin solid;*/
}

#h1_mob {
  display: none;
}

#title .inside #main_img {
  width: 42%;
}

#title .inside #main_img img {
  width: 100%;
  max-width: 504px;
}

#main_img {
  display: block;
}

#main_img_tab,
#main_img_mob {
  display: none;
}

#title .link-to-top {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}

#title .inside .link-to-top a {
  font-size: 1.3rem;
  color: #fff;
  background: #af9d75;
  padding: 0.5em 1em 0.25em;
  display: inline-block;
}

#first-copy {
  font-size: 16px;
  margin-bottom: 1em;
  padding: 30px 0 0 90px;
}

.tax {
  text-align: right;
}

@media screen and (min-width: 641px) {
  .title_bg_outer {
    background: url(../img/bg_title_pc.png) top center no-repeat;
  }
}
@media print, screen and (max-width: 640px) {
  #title {
    width: 100%;
    padding-bottom: 2em;
    margin-bottom: 0;
  }
  .title_bg_outer {
    background: none;
  }
  #title .link-to-top {
    left: 2%;
  }
  #title .inside .link-to-top a {
    padding: 3px 10px 0;
  }
  #title figure {
    background: linear-gradient(to bottom, #ddd 0, transparent 30%, transparent 100%);
  }
  #title .inside2 {
    padding-bottom: 60px;
    background: url(../img/bg_title_mob.png) bottom center no-repeat;
    background-size: cover;
    display: block;
  }
  #title .txtbox {
    width: 100%;
  }
  #title .inside #main_img {
    width: 100%;
    margin: auto auto 10px;
    text-align: center;
  }
  #title .inside #main_img img {
    width: 70%;
    max-width: 504px;
  }
  #h1_pc {
    width: 95%;
    width: 90%;
    max-width: 648px;
    margin: auto auto 30px;
  }
  #title .inside {
    width: 100%;
    /* margin-bottom: 3em; */
    display: block;
  }
  #title .txtbox {
    width: 100%;
    padding: 0;
    margin: 0;
  }
  #title .tax {
    width: 95%;
    margin: auto;
  }
  #first-copy {
    width: 90%;
    margin: auto auto 0;
    padding: 0;
  }
}
/*========================
 // id #reservation
===========================*/
#reservation {
  /* width: 65%;
  margin: auto auto 60px; */
  padding: 15px 15px;
  font-size: 1.5rem;
  text-align: center;
  position: relative;
  background: #fefbf1;
}

#reservation .inside {
  width: auto;
}

#reservation .inside2 {
  width: auto;
  padding: 30px 15px;
}

#icon_reserve {
  width: 300px;
  margin: auto auto 15px;
}

#reservation .how h6 {
  margin-bottom: 0.25em;
}

#reservation .how .tel_link {
  margin-left: 0.75em;
}

#reservation h4 {
  width: 90%;
  margin: auto auto 20px;
  padding-bottom: 10px;
  font-size: 3rem;
  font-weight: normal;
  color: #af9d75;
  border-bottom: #af9d75 1px dotted;
}

#reservation p {
  margin-bottom: 1em;
}

#reservation .link a {
  width: 50%;
  margin: auto;
  padding: 15px 0;
  font-size: 1.6rem;
  color: #fff;
  position: relative;
  background: #af9d75;
  display: block;
  border-radius: 3px;
}

#reservation .link a .arrow {
  width: 10px;
}

@media print, screen and (max-width: 768px) {
  /* 
  #reservation {
      width: 85%;
  } */
  #reservation h4 {
    font-size: 2rem;
  }
  #reservation .inside {
    background: url(../img/bg_reservation_mob_1.svg) no-repeat top center;
  }
  #reservation .inside2 {
    padding: 30px 0px;
    background: url(../img/bg_reservation_mob_2.svg) no-repeat bottom center;
  }
  #reservation p {
    width: 95%;
    margin: auto auto 15px;
    font-size: 1.4rem;
    margin-bottom: 1em;
  }
  #icon_reserve {
    width: 70%;
  }
  #reservation .link {
    margin-bottom: 0;
  }
  #reservation .link a {
    width: 100%;
  }
  /* 左右の影 */
  #reservation::before,
  #reservation::after {
    bottom: 10px;
  }
}
/*=================================
	// id #title_nav
===================================*/
#title_nav {
  margin-bottom: 15px;
}

#title_nav ul {
  width: 90%;
  margin: auto;
}

#title_nav li {
  width: 32%;
  background: #ccc;
  position: relative;
}

#title_nav a {
  height: 100%;
  font-size: 2rem;
  color: #fff;
  text-align: center;
  display: block;
  position: relative;
  border-radius: 3px;
  /*    text-shadow: 1px 1px 3px #000;*/
}

#title_nav li:first-child a {
  background: linear-gradient(to right, #443a7e 0, #5368b3 40%, #5368b3 60%, #443a7e 100%);
}

#title_nav li:nth-child(2) a {
  background: linear-gradient(to right, #9f0e16 0, #c86158 40%, #c86158 60%, #9f0e16 100%);
}

#title_nav li:nth-child(3) a {
  background: linear-gradient(to right, #c78118 0, #d89d44 50%, #c78118 100%);
}

#title_nav a span {
  padding: 1.5em 1em;
  display: block;
}

/* #title_nav a span {
    display: block;
} */
@media screen and (max-width: 1279px) {
  #title_nav {
    width: 100%;
  }
  #title_nav ul {
    width: 95%;
    margin: auto;
  }
}
@media screen and (max-width: 1023px) {
  #title_nav a {
    font-size: 1.6rem;
  }
}
/* @media screen and (max-width: 900px) {
    #title_nav {
        width: 95%;
        margin: auto;
    }

    #title_nav .flexbox {
        display: block;
    }

    #title_nav li {
        width: 100%;
        display: block;
        margin: auto auto 1em;
    }

    #title_nav li:first-child {
        margin-right: 0;
    }

    #title_nav a {
        padding: 1.5em;
    }
} */
@media print, screen and (max-width: 640px) {
  #title_nav {
    width: 85%;
    margin: auto;
  }
  #title_nav li {
    width: 100%;
    margin: auto auto 1em;
  }
  #title_nav a {
    font-size: 1.6rem;
    /* padding: 1.5em 1em; */
    padding: 0 1em;
  }
}
/*=================================
	banner
===================================*/
#bnr {
  width: 90%;
  max-width: 1020px;
  margin-left: auto;
  margin-right: auto;
}

#bnr li a img {
  width: 100%;
}

@media screen and (min-width: 640px) {
  #bnr li {
    width: 49.5%;
    max-width: 500px;
  }
}
/*=================================
	// class .contents
===================================*/
.bg_va .contents {
  padding: 0 0 10px;
}

.bg_vc .contents {
  margin-bottom: 0px;
  padding: 75px 0 30px;
  /*75px 0 60px*/
}

.bg_eve .contents {
  margin-bottom: 90px;
  padding: 75px 0 60px;
  /*60px 0 60px*/
}

.contents img {
  width: 100%;
}

.contents .lv_02 {
  width: 98%;
  /* max-width: 1260px; */
  max-width: 1280px;
  margin: auto;
}

.contents h2 {
  padding: 45px 0;
  font-size: 3.6rem;
  font-weight: normal;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  text-align: center;
}

#viola h2 {
  background: #443a7e;
  background: linear-gradient(to right, #443a7e 0, #5368b3 40%, #5368b3 60%, #443a7e 100%);
}

#cello h2 {
  background: #9f0e16;
  background: linear-gradient(to right, #9f0e16 0, #c86158 40%, #c86158 60%, #9f0e16 100%);
}

#event h2 {
  background: #c78118;
  background: linear-gradient(to right, #c78118 0, #e6b56c 50%, #c78118 100%);
}

.contents h2 span {
  margin-left: 0.5em;
}

.sub_category {
  margin-bottom: 60px;
}

.sub_category h3 {
  width: 95%;
  margin: auto auto 1em;
  padding: 0 0;
  font-size: 3rem;
  font-weight: normal;
  color: #666;
  font-family: "Noto Serif JP", serif;
  text-align: center;
}

.sub_category h3 .break_1 {
  margin-left: 0.5em;
}

#viola .sub_category h3 {
  color: #3f57af;
  border-bottom: #3f57af thin solid;
}

#cello .sub_category h3 {
  color: #de5e52;
  border-bottom: #de5e52 thin solid;
}

/* 
#event .sub_category h3 {
    color: #c78118;
    border-bottom: #c78118 thin solid;
} */
.contents .lead {
  width: 85%;
  margin: auto;
  padding: 2em 0 1em;
}

.contents .lead p {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 1em;
}

.part_of {
  width: 90%;
  margin: auto;
  padding: 0 0 0.25em;
  font-size: 1.8rem;
  color: #888;
  display: block;
  text-align: center;
}

/*
#viola .part_of {
    color: #5368b3;
    border-bottom: #d2d8f0 thin solid;
}

#cello .part_of {
    color: #d54d41;
    border-bottom: #d57a72 thin solid;
}
*/
.contents .lead .tax {
  font-size: 1.2rem;
  text-align: right;
}

.link-lineup a {
  width: 50%;
  /* margin: auto auto 3em; */
  padding: 1em 0;
  text-align: center;
  color: #555;
  font-size: 1.6rem;
  /* background: #9D4753; */
  background: #fff;
  border: #555 thin solid;
  display: block;
  border-radius: 2em;
}

@media screen and (max-width: 1023px) {
  .contents .lv_02 {
    width: 98%;
  }
  .bg_vc .contents {
    padding: 60px 0 1px;
    /*60 0 60*/
  }
}
@media print, screen and (max-width: 768px) {
  /*
      .contents {
          padding: 1.5em 0;
      }

  */
  .bg_va .contents {
    padding-bottom: 5px;
  }
  .contents h2 {
    font-size: 2rem;
  }
  .contents h2 span {
    margin-left: 0;
    display: block;
  }
  .sub_category {
    margin-bottom: 0;
  }
  .sub_category h3 {
    font-size: 2.2rem;
  }
  .sub_category h3 .break_1 {
    margin-left: 0;
    display: block;
  }
  .contents .lead {
    padding: 0.5em 0 2em;
  }
  .contents .lead p {
    width: 100%;
    margin: auto auto 1em;
    font-size: 1.4rem;
  }
  .link-lineup a {
    width: 90%;
    border-radius: 3em;
  }
  .contents h2 {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 320px) {
  .contents .lead {
    width: 100%;
  }
  .contents .lead p {
    font-size: 1.2rem;
  }
}
/*=================================
	// id .score_sale
===================================*/
.score_sale {
  width: 70%;
  margin: auto auto 30px;
  padding: 20px 2.5%;
  background: #fefbf1;
  text-align: center;
}

.score_sale h5 {
  font-size: 1.8rem;
  color: #c98e2f;
  margin-bottom: 10px;
}

.score_sale .br_1 {
  display: none;
}

.score_sale h5 .off {
  font-size: 2.2rem;
  color: #c00;
}

/* .score_sale p {
    font-size: 1.5rem;
    margin: 0 0 10px;
} */
.score_sale p.note {
  font-size: 1.3rem;
}

.score_sale ul {
  padding-top: 15px;
}

.score_sale ul a {
  color: #fff;
  background: #c98e2f;
  padding: 10px 30px;
  position: relative;
  border-radius: 3em;
}

@media print, screen and (max-width: 768px) {
  .score_sale {
    width: 80%;
  }
  .score_sale h5 {
    font-size: 1.5rem;
  }
  .score_sale h5 .off {
    font-size: 2rem;
  }
  .score_sale {
    padding: 20px 5%;
  }
  .score_sale .br_1 {
    display: block;
  }
}
/*=================================
	// note individual
===================================*/
#standard .link-lineup a {
  background: #af9d75;
}

#standard .item {
  margin-bottom: 0 !important;
}

#standard .note {
  margin-bottom: 3em;
}

/*=================================
	// id .acce
===================================*/
.acce {
  position: relative;
}

.acce h3 {
  font-family: "Noto Serif JP", serif;
  color: #e5004f;
  font-weight: normal;
  border-bottom: #e5004f thin solid;
}

.acce h3 small {
  font-size: 2.6rem;
}

/* .acce .flexbox {
    width: 92%;
    margin: auto;
    align-items: center;
} */
.acce .lead {
  font-size: 2rem;
}

/* .acce .flexbox .txtbox {
    width: 52%;
}

.acce .flexbox figure {
    width: 45%;
    max-width: 516px;
} */
@media print, screen and (max-width: 768px) {
  .acce h3 {
    text-align: center;
    width: 100%;
    font-size: 2.2rem;
    line-height: 1.3;
    padding-bottom: 0.5em;
  }
  .acce h3 small {
    font-size: 1.6rem;
  }
  .acce .flexbox {
    display: block;
  }
  .acce .lead {
    font-size: 1.6rem;
  }
  .acce .flexbox .txtbox {
    width: 100%;
  }
  .acce .flexbox figure {
    width: 100%;
    max-width: 100%;
  }
}
/********************************************************/
#celloset {
  margin-top: 60px;
}

@media print, screen and (max-width: 768px) {
  #celloset {
    margin-top: 0px;
  }
}
/*********************************************************************

すみっこ

***************************************************************/
/*=======================
	// id .campaign
=========================*/
#campaign.category_outer {
  padding: 20px 0;
}

#campaign .category {
  /*    width: 100%;*/
  box-shadow: none;
}

.campaign {
  width: auto;
  max-width: 1250px;
  margin: auto auto 30px;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#sueoki.campaign {
  max-width: 1200px;
}

.campaign figure {
  width: 23%;
  max-width: 240px;
}

.campaign .txtbox {
  /* width: 74%; */
  /* width: 76%; */
  width: calc(100% - 255px);
  font-size: 1.4rem;
}

#campaign h5 {
  font-size: 2rem;
  border-bottom: #ccc 1px solid;
  background: none;
  text-align: left;
  margin-bottom: 0.5em;
}

.campaign h5 {
  line-height: 1.4;
}

.campaign h5 .heading {
  font-size: 1.8rem;
  /*    color: #ff8000;*/
  color: #efa625;
}

.campaign p {
  /* margin-bottom: 1em; */
  margin: 0.8em 0;
  line-height: 1.7;
}

@media print, screen and (max-width: 768px) {
  .campaign {
    padding: 2em 0;
    display: block;
  }
  .campaign p {
    /* margin-bottom: 1em; */
    margin: 0.8em 0;
    line-height: 1;
  }
  .campaign figure {
    width: 50%;
    margin: auto auto 1em;
  }
  .campaign .txtbox {
    width: 86%;
    /*85*/
    margin: auto;
  }
  .campaign h5 {
    font-size: 2rem;
  }
  .campaign h5 .heading {
    font-size: 1.5rem;
    line-height: 1.4;
    display: inline-block;
  }
}
/*========================
 // #sumikko
===========================*/
.second_page #sumikko {
  margin: auto auto 30px;
}

#sumikko {
  padding: 60px 20px 0;
  margin: 30px 0;
}

#sumikko .inside {
  width: auto;
  margin: auto;
  padding: 30px;
  border: #ef93bc 3px solid;
}

#sumikko .inside h4 {
  margin: auto auto 20px;
  max-width: 1080px;
  text-align: center;
}

#sumikko .inside h5 {
  font-size: 2.6rem;
  text-align: center;
  margin-bottom: 10px;
  color: #5e4237;
}

#sumikko .inside h5 span {
  margin-left: 0.5em;
}

#sumikko .inside .txtbox {
  font-size: 1.6rem;
  max-width: 900px;
  margin: auto;
  text-align: center;
  color: #444;
}

#sumikko .note {
  padding-top: 15px;
}

#sumikko .note ul {
  font-size: 1.4rem;
}

.imgPC {
  display: block;
}

.imgMOB {
  display: none;
}

.brPC {
  display: block;
}

.brMOB {
  display: none;
}

@media print, screen and (max-width: 768px) {
  #sumikko {
    padding: 30px 10px 0;
    margin: 0px 0;
  }
  #sumikko .inside {
    padding: 15px 10px;
    /*15 15*/
  }
  #sumikko .inside h5 {
    font-size: 2rem;
  }
  #sumikko .inside h5 span {
    margin-left: 0;
    display: block;
  }
  #sumikko .note {
    /* padding-top:15px; */
    padding: 15px 0;
  }
  .imgPC {
    display: none;
  }
  .imgMOB {
    display: block;
  }
  .brPC {
    display: none;
  }
  .brMOB {
    display: block;
  }
}
@media print, screen and (max-width: 640px) {
  #sumikko .inside {
    padding: 5px 5px;
    /*15 15*/
  }
}
/*=================================
	event
===================================*/
.text-gold {
  /* color: #b68517; */
  color: #8a630a;
}

.text-gold2 {
  color: #b68517;
}

#event .link.reserve a {
  width: 90%;
  max-width: 460px;
  margin: auto;
  color: #fff;
  background-color: #af9d75;
  border-radius: 3px;
  padding: 10px 0;
  text-align: center;
  display: block;
}

#event h4 {
  color: #b68517;
  font-family: "Noto Serif JP", serif;
  font-weight: normal;
}

#event h4 .sub {
  color: #fff;
  padding: 0 15px;
  border-radius: 3em;
}

#event .cello h4 .sub {
  background-color: #de5e52;
}

#event .viola h4 .sub {
  background-color: #3f57af;
}

#event .icon {
  font-size: 12px;
  color: #fff;
  background: #af9d75;
}

#event .date .numeric {
  font-size: 24px;
  display: inline-block;
}

#event .date .japanese {
  font-size: 20px;
  display: inline-block;
}

#event .date .japanese.month-date {
  margin-left: 0.2em;
}

#event .profile h5 {
  color: #b68517;
  font-family: "Noto Serif JP", serif;
  font-weight: normal;
  padding-bottom: 15px;
  margin-bottom: 30px;
  border-bottom: #b68517 thin solid;
}

@media screen and (min-width: 640px) {
  #event .date .numeric {
    font-size: 34px;
  }
  #event .date .japanese {
    font-size: 20px;
  }
}
/* //////// special event common ////// */
.sp-profile {
  background: rgba(255, 255, 255, 0.8);
}

#special .sp-detail {
  /* padding-top: 26vh; */
  padding-top: 30vh;
}

#special .detail {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  /* padding: 60px 10%; */
  padding: 30px 5%;
  background: rgba(255, 255, 255, 0.8);
}

@media screen and (min-width: 900px) {
  #special .sp-detail {
    padding-top: 0;
  }
  #special .detail {
    width: 56%;
    /* margin: 0 0 60px 90px; */
    margin: 0 0 45px 0px;
    /* padding-top: 90px; */
    padding-top: 90px;
    background: none;
  }
}
@media screen and (min-width: 641px) and (max-width: 900px) {
  #special .sp-detail {
    padding-top: 60vh;
  }
  #special .detail {
    padding: 60px 10%;
  }
}
/* //////// 生野 正樹 ////// */
#date-1004 {
  background: url(../img/event/mob/MasakiShono.jpg) no-repeat top right #edf5f8;
  background-size: contain;
  box-shadow: inset 0 0 50px #c8dfe7;
}

#date-1004 h4 {
  color: #3f57af;
}

#date-1004 .icon {
  font-size: 12px;
  color: #fff;
  background: #3f57af;
}

#date-1004 .sp-profile {
  border: #babfd3 thin solid;
}

#date-1004 .sp-profile h5 {
  font-family: "Pinyon Script", cursive;
  font-weight: normal;
  color: #3f57af;
}

@media screen and (min-width: 900px) {
  #date-1004 {
    background: url(../img/event/bg_MasakiShono.jpg) no-repeat top right;
    background-size: contain;
    padding-top: 0;
  }
}
/* //////// 玉川 克 ////// */
#date-0216 {
  background: url(../img/event/mob/MasaruTamagawa.jpg) no-repeat top right #8b8680;
  background-size: contain;
  /* box-shadow: inset 0 0 50px #ebd3d0; */
  box-shadow: inset 0 0 50px #8b8680;
}

#date-0216 h4 {
  color: #8e1707;
}

#date-0216 .icon {
  font-size: 12px;
  color: #fff;
  background: #8e1707;
}

#date-0216 .sp-profile {
  border: rgb(87, 84, 80) thin solid;
}

#date-0216 .sp-profile h5 {
  font-family: "Pinyon Script", cursive;
  font-weight: normal;
  color: #8e1707;
}

@media screen and (min-width: 900px) {
  #date-0216 {
    background: url(../img/event/bg_MasaruTamagawa.jpg) no-repeat top right;
    background-size: contain;
    padding-top: 0;
  }
}
/*=====================
	// 202510 追記分
=======================*/
html {
  scroll-behavior: smooth;
  scroll-padding-top: 120px;
}
@media screen and (max-width: 999px) {
  html {
    scroll-padding-top: 60px;
  }
}

em {
  font-style: normal;
}

#title {
  margin-top: 100px;
}
@media screen and (max-width: 999px) {
  #title {
    margin-top: 60px;
  }
}
#title .txtbox {
  width: 78%;
}
@media screen and (max-width: 640px) {
  #title .txtbox {
    width: 100%;
  }
}

@media screen and (max-width: 999px) {
  #bnr {
    width: 80%;
  }
}
#bnr ul li {
  width: 70%;
  max-width: 700px;
}
@media screen and (max-width: 999px) {
  #bnr ul li {
    width: 100%;
  }
}

#contract-present {
  overflow: initial;
}
#contract-present h3 {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-size: 28px;
  padding: 8px 20px;
  font-family: "Noto Serif JP", serif;
  color: #997e40;
  font-weight: 600;
}
#contract-present h3::before {
  content: "";
  display: block;
  position: absolute;
  top: -19px;
  width: 100%;
  height: 18px;
  left: 0;
  right: 0;
  margin: 0 auto;
  background: url(../img/frame_upper.png);
  background-size: cover;
}
#contract-present h3::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -19px;
  width: 100%;
  height: 18px;
  left: 0;
  right: 0;
  margin: 0 auto;
  background: url(../img/frame_bottom.png);
  background-size: cover;
}
#contract-present .present-wrapper {
  width: 80%;
  margin: 40px auto;
}
@media screen and (max-width: 999px) {
  #contract-present .present-wrapper {
    width: 90%;
  }
}
#contract-present .present-box {
  display: flex;
  flex-direction: row;
  align-items: normal;
  justify-content: center;
}
#contract-present .present-box:nth-of-type(1) {
  margin-bottom: 20px;
}
@media screen and (max-width: 999px) {
  #contract-present .present-box {
    flex-direction: column;
  }
}
#contract-present .present-box p {
  width: 238px;
  height: 138px;
  display: flex;
  align-items: center;
  background: #997e40;
  outline: 2px solid rgb(255, 255, 255);
  outline-offset: -6px;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 999px) {
  #contract-present .present-box p {
    width: 100%;
    height: auto;
    padding: 10px 20px;
  }
}
#contract-present .present-box p span {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-family: "Noto Serif JP", serif;
  color: #fff;
  font-weight: 600;
  font-size: 28px;
}
#contract-present .present-box p span:nth-of-type(2) {
  font-size: 12px;
}
#contract-present .present-box ul {
  width: 65%;
  border: 2px solid #997e40;
  border-left: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 999px) {
  #contract-present .present-box ul {
    width: 100%;
    border: 2px solid #997e40;
    border-top: none;
    padding: 20px 0;
  }
}
#contract-present .present-box ul li {
  padding-left: 40px;
  font-size: 18px;
  font-weight: 600;
  color: #414141;
}
#contract-present .present-box ul li:nth-of-type(1) {
  margin-bottom: 10px;
}
@media screen and (max-width: 999px) {
  #contract-present .present-box ul li {
    padding-left: 10px;
    font-size: 14px;
  }
}

#bnr > ul {
  justify-content: center;
}

#date-1004 {
  background: url(../img/event/bg_concert.png?v=250909);
  background-repeat: no-repeat;
}
@media screen and (max-width: 999px) {
  #date-1004 {
    background: none;
    background-repeat: no-repeat;
    background-size: contain;
  }
}
#date-1004 .concert-img-mob {
  display: none;
}
@media screen and (max-width: 999px) {
  #date-1004 .concert-img-mob {
    display: block;
    width: 116%;
    margin-left: -8%;
    margin-bottom: 10px;
  }
}

#date-1004 > div.mb-30.mb-sm-60 > div > h4 > span:nth-child(3) {
  color: #de5e52;
}

#date-1004 > div.mb-30.mb-sm-60 > div > h4 > span:nth-child(4) {
  color: #8a630a;
}

#date-1004 .icon {
  background: #8a630a;
}

/*====================================================
	#msc
====================================================*/
#msc {
  background: #fff;
  font-size: 1.6rem;
  overflow: hidden;
}

#msc .inside {
  width: 90%;
  margin: auto;
}

#msc .br_se {
  display: none;
}

#msc h3 {
  text-align: center;
  color: #fff;
  background: #a38544;
  padding: 1em 1em 0.5em;
}

#msc h3 img {
  width: 50%;
}

#msc .inside {
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 2em 2.5% 3em;
}

#msc .txt {
  width: 69%;
  margin-right: 1%;
}

#msc figure {
  width: 30%;
  text-align: right;
}

#msc figure img {
  width: 100%;
  max-width: 290px;
}

#msc .catch {
  color: #9b7c25;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1em;
}

#msc .free {
  color: #c00;
}

#msc .link a {
  color: #fff;
  background: #c2564a;
  margin-bottom: 1em;
  padding: 0.25em 1.5em;
  position: relative;
  border-radius: 3em;
}

/* #msc .link a::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-bottom: 14px solid #e47669;
    border-left: 14px solid transparent;
} */
#msc p {
  margin-bottom: 2em;
}

#msc .link a:hover {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  opacity: 0.6;
}

@media screen and (max-width: 1023px) {
  #msc h3 {
    padding: 2em 0 1em;
  }
  #msc h3 img {
    width: 80%;
  }
  #msc .link a {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
    padding: 1em 1em;
    text-align: center;
    display: block;
  }
  #msc figure {
    width: 50%;
    margin: auto;
    text-align: center;
  }
  #msc .txt {
    width: auto;
    margin: 0 0 2em;
  }
}
@media screen and (max-width: 768px) {
  #msc .inside {
    padding: 2em 2.5% 0;
  }
  #msc h3 img {
    width: 95%;
  }
  #msc .link a {
    width: 90%;
  }
}
@media screen and (max-width: 320px) {
  #msc .link a {
    width: 80% !important;
    border-radius: 5em !important;
  }
  #msc .br_se {
    display: block;
  }
}
#title_nav li:nth-child(1) a {
  background: linear-gradient(to right, #c78118 0, #d89d44 50%, #c78118 100%);
}

#title_nav li:nth-child(1) a {
  background: linear-gradient(to right, #443a7e 0, #5368b3 40%, #5368b3 60%, #443a7e 100%);
}

#title_nav li:nth-child(2) a {
  background: linear-gradient(to right, #9f0e16 0, #c86158 40%, #c86158 60%, #9f0e16 100%);
}

#title_nav li:nth-child(3) a {
  background: linear-gradient(to right, #c78118 0, #d89d44 50%, #c78118 100%);
}

#set h2 {
  background: linear-gradient(to right, #c78118 0, #d89d44 50%, #c78118 100%);
}
#set .sub_category h3 {
  color: #c78118;
  border-bottom: #c78118 thin solid;
}

@media screen and (max-width: 999px) {
  #reservation > div > div > p {
    text-align: center;
  }
}
#reservation .how h6 {
  margin-bottom: 0.25em;
  font-size: 13px;
}
#reservation .how p {
  font-size: 17px;
}

@media screen and (max-width: 999px) {
  #special > p {
    text-align: left;
  }
}

#date-1004 {
  background-size: 40%;
  background-position-x: right;
  padding-top: 0 !important;
}
@media screen and (max-width: 999px) {
  #date-1004 .detail {
    padding: 30px 2%;
    width: 90%;
    margin: 0 auto;
  }
}
#date-1004 .profile {
  width: 90%;
  margin: 0 auto;
}
@media screen and (max-width: 999px) {
  #date-1004 {
    background-size: 100%;
    padding-top: 0 !important;
  }
}
@media screen and (max-width: 600px) {
  #date-1004 {
    padding-top: 0 !important;
  }
}
#date-1004 h4 {
  width: 480px;
}
@media screen and (max-width: 999px) {
  #date-1004 h4 {
    width: 100%;
  }
}
#date-1004 h4 span {
  font-size: 36px;
  line-height: 40px;
  text-align: right;
  color: #5d5d5d !important;
}
@media screen and (max-width: 999px) {
  #date-1004 h4 span {
    font-size: 20px;
    line-height: 24px;
  }
}
#date-1004 h4 span span {
  font-size: 18px;
  display: inline-block;
  margin-right: 10px;
}
@media screen and (max-width: 999px) {
  #date-1004 h4 span span {
    font-size: 14px;
  }
}
#date-1004 h4 span.concert-title {
  font-size: 22px;
  display: inline-block;
  text-align: center;
  width: 100%;
  color: #8a630a !important;
}
@media screen and (max-width: 999px) {
  #date-1004 h4 span.concert-title {
    font-size: 14px;
  }
}
#date-1004 h4 span.concert-title span {
  display: inline-block;
  color: #8a630a !important;
  font-size: 34px;
}
@media screen and (max-width: 999px) {
  #date-1004 h4 span.concert-title span {
    font-size: 18px;
  }
}
#date-1004 h4 span.concert-title span:nth-child(1) {
  font-size: 22px;
  color: #3f57af !important;
  margin-right: 0;
}
@media screen and (max-width: 999px) {
  #date-1004 h4 span.concert-title span:nth-child(1) {
    font-size: 14px;
  }
}
#date-1004 h4 span.concert-title span:nth-child(2) {
  font-size: 22px;
  color: #8e1707 !important;
  margin-right: 0;
}
@media screen and (max-width: 999px) {
  #date-1004 h4 span.concert-title span:nth-child(2) {
    font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .mob {
    display: block;
  }
}
@media print, screen and (min-width: 1000px) {
  .mob {
    display: none;
  }
}

#slide_nav {
  top: 100px !important;
  display: none;
}
@media screen and (max-width: 999px) {
  #slide_nav {
    top: 60px !important;
  }
}
@media screen and (max-width: 999px) {
  #slide_nav .inside {
    padding-top: 2px !important;
  }
}
#slide_nav #headFirst {
  width: 20%;
  padding-top: 8px !important;
}
@media screen and (max-width: 999px) {
  #slide_nav #headFirst {
    width: 100%;
  }
}
@media screen and (max-width: 999px) {
  #slide_nav #headFirst #sale-logo img {
    width: 58% !important;
  }
}
#slide_nav ul {
  padding-top: 2px !important;
}
#slide_nav ul li a {
  min-height: 46px;
  display: flex;
  justify-content: center;
  align-items: center;
}
#slide_nav ul li:nth-child(6) {
  display: none !important;
  display: block !important;
}
@media screen and (max-width: 999px) {
  #slide_nav ul li:nth-child(6) {
    display: block !important;
  }
}

.advance_notice {
  padding-top: 160px;
  margin: 0 auto;
  text-align: center;
  margin-bottom: 40px;
}

#access {
  width: 98%;
  max-width: 1280px;
}
#access > h2 {
  background: linear-gradient(to right, #c78118 0, #e6b56c 50%, #c78118 100%);
  color: #fff;
}

.dummy-txt {
  color: #ff0000 !important;
}

#date-1011 > div > figure, #date-10112 > div > figure, #date-1013 > div.d-sm-flex.flex-sm-row-reverse.justify-sm-between.mb-60 > figure {
  width: 36%;
}
@media screen and (max-width: 760px) {
  #date-1011 > div > figure, #date-10112 > div > figure, #date-1013 > div.d-sm-flex.flex-sm-row-reverse.justify-sm-between.mb-60 > figure {
    width: 100%;
  }
}

@media screen and (max-width: 999px) {
  #reservation {
    width: 90%;
  }
}

#date-1004 > div.mb-30.mb-sm-60 > div > dl > dd:nth-child(6) {
  width: 180%;
}
#date-1004 > div.mb-30.mb-sm-60 > div > dl > dd:nth-child(6) li {
  margin-bottom: 4px;
}
@media screen and (max-width: 999px) {
  #date-1004 > div.mb-30.mb-sm-60 > div > dl > dd:nth-child(6) {
    width: initial;
  }
}

#event .date:has(.endtxt) {
  color: #b6b6b6;
}
#event .date .endtxt {
  font-size: 12px;
  color: #000;
  margin-bottom: 10px;
}/*# sourceMappingURL=styles.css.map */






/* 202610 */
body {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.6s ease;
  &.is-loaded {
    opacity: 1;
    visibility: visible;
  }
}




:root {
  --glow-shadow:
    0 0 2px #ffffff,
    0 0 2px #ffffff,
    0 0 2px #ffffff,
    0 0 2px #ffffff,
    0 0 2px #ffffff,
    0 0 4px #ffffff,
    0 0 4px #ffffff,
    0 0 4px #ffffff,
    0 0 4px #ffffff,
    0 0 4px #ffffff,
    0 0 8px #ffffff,
    0 0 8px #ffffff,
    0 0 8px #ffffff,
    0 0 8px #ffffff;
  --glow-box-shadow: drop-shadow(0 0 4px rgba(255, 255, 255, 0.9)) drop-shadow(0 0 6px rgba(255, 255, 255, 0.7)) drop-shadow(0 0 8px rgba(255, 255, 255, 0.7));
}

#wrap {
  .bg_va {
    /* background-color: #e87818;
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="80" height="80"><polygon points="0,0 20,0 20,20" fill="%23fbb552"/><polygon points="0,0 20,20 0,20" fill="%23f4952c"/><polygon points="20,0 40,0 20,20" fill="%23e87818"/><polygon points="40,0 40,20 20,20" fill="%23ce6110"/><polygon points="40,0 60,0 60,20" fill="%23fbb552"/><polygon points="40,0 60,20 40,20" fill="%23f4952c"/><polygon points="60,0 80,0 60,20" fill="%23e87818"/><polygon points="80,0 80,20 60,20" fill="%23ce6110"/><polygon points="0,20 20,20 0,40" fill="%23e87818"/><polygon points="20,20 20,40 0,40" fill="%23ce6110"/><polygon points="20,20 40,20 40,40" fill="%23fbb552"/><polygon points="20,20 40,40 20,40" fill="%23f4952c"/><polygon points="40,20 60,20 40,40" fill="%23e87818"/><polygon points="60,20 60,40 40,40" fill="%23ce6110"/><polygon points="60,20 80,20 80,40" fill="%23fbb552"/><polygon points="60,20 80,40 60,40" fill="%23f4952c"/><polygon points="0,40 20,40 20,60" fill="%23f4952c"/><polygon points="0,40 20,60 0,60" fill="%23fbb552"/><polygon points="20,40 40,40 20,60" fill="%23ce6110"/><polygon points="40,40 40,60 20,60" fill="%23e87818"/><polygon points="40,40 60,40 60,60" fill="%23f4952c"/><polygon points="40,40 60,60 40,60" fill="%23fbb552"/><polygon points="60,40 80,40 60,60" fill="%23ce6110"/><polygon points="80,40 80,60 60,60" fill="%23e87818"/><polygon points="0,60 20,60 0,80" fill="%23ce6110"/><polygon points="20,60 20,80 0,80" fill="%23e87818"/><polygon points="20,60 40,60 40,80" fill="%23f4952c"/><polygon points="20,60 40,80 20,80" fill="%23fbb552"/><polygon points="40,60 60,60 40,80" fill="%23ce6110"/><polygon points="60,60 60,80 40,80" fill="%23e87818"/><polygon points="60,60 80,60 80,80" fill="%23f4952c"/><polygon points="60,60 80,80 60,80" fill="%23fbb552"/></svg>');
    background-size: 300px 300px;
    background-repeat: repeat; 
    position: relative; */
    &::before {
      /* content: '';
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background: linear-gradient(116deg, #b38e05 0%, #ffffff 100%);
      pointer-events: none;
      mix-blend-mode: multiply; */
    }
    &::after {
      /* content: '';
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background: linear-gradient(
        90deg,
        #5c2b0c 0%,
        #8e612a 20%,
        #bfa35b 40%,
        #faefc1 48%,
        #ffffff 50%, 
        #faefc1 52%, 
        #bfa35b 60%, 
        #8e612a 80%,
        #5c2b0c 100% 
      );
      pointer-events: none;
      mix-blend-mode: multiply; */
    }
  }

  .title_bg_outer {
    position: relative;
    background: none;
    &::before {
      
    }
    #title {
      position: relative;
      background-color: #e87818;
      /* background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="80" height="80"><polygon points="0,0 20,0 20,20" fill="%23fbb552"/><polygon points="0,0 20,20 0,20" fill="%23f4952c"/><polygon points="20,0 40,0 20,20" fill="%23e87818"/><polygon points="40,0 40,20 20,20" fill="%23ce6110"/><polygon points="40,0 60,0 60,20" fill="%23fbb552"/><polygon points="40,0 60,20 40,20" fill="%23f4952c"/><polygon points="60,0 80,0 60,20" fill="%23e87818"/><polygon points="80,0 80,20 60,20" fill="%23ce6110"/><polygon points="0,20 20,20 0,40" fill="%23e87818"/><polygon points="20,20 20,40 0,40" fill="%23ce6110"/><polygon points="20,20 40,20 40,40" fill="%23fbb552"/><polygon points="20,20 40,40 20,40" fill="%23f4952c"/><polygon points="40,20 60,20 40,40" fill="%23e87818"/><polygon points="60,20 60,40 40,40" fill="%23ce6110"/><polygon points="60,20 80,20 80,40" fill="%23fbb552"/><polygon points="60,20 80,40 60,40" fill="%23f4952c"/><polygon points="0,40 20,40 20,60" fill="%23f4952c"/><polygon points="0,40 20,60 0,60" fill="%23fbb552"/><polygon points="20,40 40,40 20,60" fill="%23ce6110"/><polygon points="40,40 40,60 20,60" fill="%23e87818"/><polygon points="40,40 60,40 60,60" fill="%23f4952c"/><polygon points="40,40 60,60 40,60" fill="%23fbb552"/><polygon points="60,40 80,40 60,60" fill="%23ce6110"/><polygon points="80,40 80,60 60,60" fill="%23e87818"/><polygon points="0,60 20,60 0,80" fill="%23ce6110"/><polygon points="20,60 20,80 0,80" fill="%23e87818"/><polygon points="20,60 40,60 40,80" fill="%23f4952c"/><polygon points="20,60 40,80 20,80" fill="%23fbb552"/><polygon points="40,60 60,60 40,80" fill="%23ce6110"/><polygon points="60,60 60,80 40,80" fill="%23e87818"/><polygon points="60,60 80,60 80,80" fill="%23f4952c"/><polygon points="60,60 80,80 60,80" fill="%23fbb552"/></svg>'); */

     background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="80" height="80"><defs><linearGradient id="g1" x1="0%" y1="0%" x2="100%" y2="100%"><stop offset="0%" stop-color="%23f4952c"/><stop offset="100%" stop-color="%23e87818"/></linearGradient><linearGradient id="g2" x1="0%" y1="0%" x2="100%" y2="100%"><stop offset="0%" stop-color="%23e87818"/><stop offset="100%" stop-color="%23ce6110"/></linearGradient><linearGradient id="g3" x1="0%" y1="0%" x2="100%" y2="100%"><stop offset="0%" stop-color="%23ce6110"/><stop offset="100%" stop-color="%23b54d0c"/></linearGradient><linearGradient id="g4" x1="0%" y1="0%" x2="100%" y2="100%"><stop offset="0%" stop-color="%23b54d0c"/><stop offset="100%" stop-color="%239c3f08"/></linearGradient></defs><polygon points="0,0 20,0 20,20" fill="url(%23g1)"/><polygon points="0,0 20,20 0,20" fill="url(%23g2)"/><polygon points="20,0 40,0 20,20" fill="url(%23g3)"/><polygon points="40,0 40,20 20,20" fill="url(%23g4)"/><polygon points="40,0 60,0 60,20" fill="url(%23g1)"/><polygon points="40,0 60,20 40,20" fill="url(%23g2)"/><polygon points="60,0 80,0 60,20" fill="url(%23g3)"/><polygon points="80,0 80,20 60,20" fill="url(%23g4)"/><polygon points="0,20 20,20 0,40" fill="url(%23g3)"/><polygon points="20,20 20,40 0,40" fill="url(%23g4)"/><polygon points="20,20 40,20 40,40" fill="url(%23g1)"/><polygon points="20,20 40,40 20,40" fill="url(%23g2)"/><polygon points="40,20 60,20 40,40" fill="url(%23g3)"/><polygon points="60,20 60,40 40,40" fill="url(%23g4)"/><polygon points="60,20 80,20 80,40" fill="url(%23g1)"/><polygon points="60,20 80,40 60,40" fill="url(%23g2)"/><polygon points="0,40 20,40 20,60" fill="url(%23g2)"/><polygon points="0,40 20,60 0,60" fill="url(%23g1)"/><polygon points="20,40 40,40 20,60" fill="url(%23g4)"/><polygon points="40,40 40,60 20,60" fill="url(%23g3)"/><polygon points="40,40 60,40 60,60" fill="url(%23g2)"/><polygon points="40,40 60,60 40,60" fill="url(%23g1)"/><polygon points="60,40 80,40 60,60" fill="url(%23g4)"/><polygon points="80,40 80,60 60,60" fill="url(%23g3)"/><polygon points="0,60 20,60 0,80" fill="url(%23g4)"/><polygon points="20,60 20,80 0,80" fill="url(%23g3)"/><polygon points="20,60 40,60 40,80" fill="url(%23g2)"/><polygon points="20,60 40,80 20,80" fill="url(%23g1)"/><polygon points="40,60 60,60 40,80" fill="url(%23g4)"/><polygon points="60,60 60,80 40,80" fill="url(%23g3)"/><polygon points="60,60 80,60 80,80" fill="url(%23g2)"/><polygon points="60,60 80,80 60,80" fill="url(%23g1)"/></svg>');


      background-size: 400px 400px;
      background-repeat: repeat;
      padding-bottom: 20px;
      &::before {
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: url(../img/bg_title_pc.png) top center no-repeat;
        z-index: 2;
      }
      &::after {
        content: '';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: linear-gradient(
        /* 90deg,
        #5c2b0c 0%,
        #8e612a 20%,
        #bfa35b 40%,
        #faefc1 48%,
        #ffffff 50%, 
        #faefc1 52%, 
        #bfa35b 60%, 
        #8e612a 80%,
        #5c2b0c 100%  */
        90deg, #5c2b0c 0%, #8e612a 20%, #BFA35E 40%, #dbc155 48%, #e5e5e5 50%, #e1d18e 52%, #bfa35b 60%, #8e612a 80%, #5c2b0c 100%
        );
        pointer-events: none;
        mix-blend-mode: multiply;
        z-index: 1;
      }
      .inside {
        z-index: 2;
      }

      #title_mask {
        position: absolute;
        width: 100%;
        height: 100%;
        display: block;
        top: 0;
        left: 0;
        /* background-image: linear-gradient(0deg, #d96200, #ff0000);
        mix-blend-mode: soft-light;
        opacity: .6; */
        /* background-image: linear-gradient(0deg, #000000, #959595);
        mix-blend-mode: soft-light; */

        background-image: linear-gradient(0deg, #2b2b2b, #c9c9c9);
        opacity: .2;
        mix-blend-mode: initial;
      }
    }
  }

  .contents {
    padding-top: 20px;
    @media print, screen and (max-width: 768px) {
      padding-top: 20px;
    }
  }  

  .title_bg_outer {
    position: relative;
    z-index: 2;

    #title {
      .inside {
        .txtbox {
          #first-copy {
            text-shadow: var(--glow-shadow);
          }
        }

        #title_nav {
          ul {
            li {
              background: none;
              /* box-shadow: 0 0 15px rgba(255, 255, 255, 0.6); */
              filter: var(--glow-box-shadow);
            }
          }
        }

        #bnr {
          margin-top: 30px;
          li {
            background: #fff;
            a {
              filter: var(--glow-box-shadow);
            }
            &:first-child {
              margin-right: 2%;
            }
          }
        }

        p.fs-12 {
          text-shadow: var(--glow-shadow);
        }

      }
    }
  }
}


.present-box {
  p {
    span {
      &:nth-of-type(1) {
        font-size: 20px !important;
      }
      &:nth-of-type(2) {
        font-size: 18px !important;
      }
    }
  }
}

.sp_place {
  font-size: 20px;
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 10px;
  width: fit-content;
  margin: 0 auto 30px;
  span {
    &:nth-of-type(1) {
      grid-column: 1;
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 4px 8px;
      background: #b68517;
      color: #fff;
      margin-right: 10px;
      border-radius: 4px;
    }
    &:nth-of-type(2) {
      grid-column: 2;
    }
    
    
  }
  @media print, screen and (max-width: 768px) {
    font-size: 16px;
  }
}

.dl-grid {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 0.5em 0.2em;
  align-items: start;
  margin-bottom: 10px;
}


#special {
  background: #f5ebd7;
  margin-top: 30px;
  padding: 30px;
  @media print, screen and (max-width: 768px) {
    padding: 30px 10px;
    width: 96%;
  }
  h3 {
    box-shadow: 0 0 10px rgb(125 83 29);
    width: fit-content;
    border: 6px solid transparent; border-image: linear-gradient(to right, #bfa56e, #f6dfae, #9b7324) 1;
    margin: 0 auto 30px;
    padding: 10px 40px;
    color: #fff;

    background-color: #e87818;
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="80" height="80"><polygon points="0,0 20,0 20,20" fill="%23fbb552"/><polygon points="0,0 20,20 0,20" fill="%23f4952c"/><polygon points="20,0 40,0 20,20" fill="%23e87818"/><polygon points="40,0 40,20 20,20" fill="%23ce6110"/><polygon points="40,0 60,0 60,20" fill="%23fbb552"/><polygon points="40,0 60,20 40,20" fill="%23f4952c"/><polygon points="60,0 80,0 60,20" fill="%23e87818"/><polygon points="80,0 80,20 60,20" fill="%23ce6110"/><polygon points="0,20 20,20 0,40" fill="%23e87818"/><polygon points="20,20 20,40 0,40" fill="%23ce6110"/><polygon points="20,20 40,20 40,40" fill="%23fbb552"/><polygon points="20,20 40,40 20,40" fill="%23f4952c"/><polygon points="40,20 60,20 40,40" fill="%23e87818"/><polygon points="60,20 60,40 40,40" fill="%23ce6110"/><polygon points="60,20 80,20 80,40" fill="%23fbb552"/><polygon points="60,20 80,40 60,40" fill="%23f4952c"/><polygon points="0,40 20,40 20,60" fill="%23f4952c"/><polygon points="0,40 20,60 0,60" fill="%23fbb552"/><polygon points="20,40 40,40 20,60" fill="%23ce6110"/><polygon points="40,40 40,60 20,60" fill="%23e87818"/><polygon points="40,40 60,40 60,60" fill="%23f4952c"/><polygon points="40,40 60,60 40,60" fill="%23fbb552"/><polygon points="60,40 80,40 60,60" fill="%23ce6110"/><polygon points="80,40 80,60 60,60" fill="%23e87818"/><polygon points="0,60 20,60 0,80" fill="%23ce6110"/><polygon points="20,60 20,80 0,80" fill="%23e87818"/><polygon points="20,60 40,60 40,80" fill="%23f4952c"/><polygon points="20,60 40,80 20,80" fill="%23fbb552"/><polygon points="40,60 60,60 40,80" fill="%23ce6110"/><polygon points="60,60 60,80 40,80" fill="%23e87818"/><polygon points="60,60 80,60 80,80" fill="%23f4952c"/><polygon points="60,60 80,80 60,80" fill="%23fbb552"/></svg>');
    background-size: 200px 200px;
    background-repeat: repeat;
    position: relative;
    &::after {
        content: '';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: linear-gradient(
        /* 90deg,
        #5c2b0c 0%,
        #8e612a 20%,
        #bfa35b 40%,
        #faefc1 48%,
        #ffffff 50%, 
        #faefc1 52%, 
        #bfa35b 60%, 
        #8e612a 80%,
        #5c2b0c 100%  */
        90deg, #5c2b0c 0%, #8e612a 20%, #BFA35E 40%, #dbc155 48%, #e5e5e5 50%, #e1d18e 52%, #bfa35b 60%, #8e612a 80%, #5c2b0c 100%
        );
        pointer-events: none;
        mix-blend-mode: multiply;
        z-index: 0;
      }
      span {
        display: inline-block;
        position: relative;
        z-index: 1;
      }
  }
}
#sp_wrapper {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: flex-start; 
  margin-bottom: 40px;
  /* background: #f5ebd7;
  padding: 30px; */
  @media print, screen and (max-width: 768px) {
    padding: 0px;
    flex-direction: column;
  }
 > div {
  box-shadow: 0 0 10px rgb(125 83 29);
  box-sizing: border-box;
  &:nth-child(1), &:nth-child(2) {
    width: 49%;
    border: 6px solid transparent; border-image: linear-gradient(to right, #bfa56e, #f6dfae, #9b7324) 1;
    background: #fff;
    @media print, screen and (max-width: 768px) {
      width: 100%;
      margin-bottom: 20px;
    }
  }
  /* flex: 1;
  border: 6px solid transparent; border-image: linear-gradient(to right, #bfa56e, #f6dfae, #9b7324) 1; */
  &:nth-child(1) {
    margin-right: 2%;
    @media print, screen and (max-width: 768px) {
      margin-right: 0;;
    }
  }
  &:nth-child(3) {
    width: 100%;
    /* background: #dcebed; */
    padding: 20px;
    text-align: center;
    font-weight: 600;
    font-size: 18px;
    width: fit-content;
    margin: 30px auto 20px;
    background: #ffffff;
    border: 8px solid;
    border-color: #3f57af #8e1707 #8e1707 #3f57af; /* 上・右・下・左の順 */
    /* border: 6px solid transparent; border-image: linear-gradient(to right, #bfa56e, #f6dfae, #9b7324) 1; */
    span {
      /* display: block; */
      font-size: 16px;
      &:nth-of-type(1) {
        font-size: 18px;
      }
      &:nth-of-type(3) {
        display: block;
        font-size: 18px;
      }
    }
    @media print, screen and (max-width: 768px) {
      margin-top: 10px;
      padding: 20px 10px;
    }
  }
  .ev_ttl {
    /* padding: 20px; */
    
    &::before {
     
    }
    div {
      padding: 10px 20px;
      background: #000;
      color: #fff;
      text-align: center;
      
      span {

      }
    }
    h4 {
      padding: 20px 30px;
      font-size: 40px;
      position: relative;
      @media print, screen and (max-width: 768px) {
        font-size: 24px;
        padding: 20px;
      }
      &::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: url('../img/sp_bg.png') no-repeat;
        background-size: contain;
        background-position: right;
        z-index: 0;
      }
      span {
        display: block;
        position: relative;
        z-index: 1;
        &:nth-of-type(1) {

        }
        &:nth-of-type(2) {
          
        }
      }
    }
  }
  .ev_dtl {
    padding: 20px;
  }
 }
}




/* //////// 川本 嘉子 ////// */
#date-1017 {
    /* background: url(../img/event/mob/bg_yoshiko-kawamoto_mob.jpg) no-repeat top right #edf5f8;
    background-size: contain;
    box-shadow: inset 0 0 50px #b59073; */

  .ev_ttl {
    /* background: #3f57af; */
    background: linear-gradient(to right, #443a7e 0, #5368b3 40%, #5368b3 60%, #443a7e 100%);
    color: #fff;
    h4 {
      color: #fff;
    /* color: #3f57af; */
    }
  }
  
  .icon {
    font-size: 12px;
    color: #fff;
    background: #3f57af;
  }
  .sp-profile {
    border: #babfd3 thin solid;
  }
  h5 {
    font-family: "Pinyon Script", cursive;
    font-weight: normal;
    color: #3f57af;
  }
}
@media screen and (min-width: 900px) {
    #date-1017 {
        /* background: url(../img/event/bg_yoshiko-kawamoto.jpg) no-repeat top right;
        background-size: contain;
        padding-top: 0; */
    }
}


/* //////// 辻󠄀本 玲 ////// */
#date-1025 {
    /* background: url(../img/event/mob/bg_rei-tsujimoto_mob.jpg) no-repeat top right #8b8680;
    background-size: contain;
    box-shadow: inset 0 0 50px #8b8680; */

  .ev_ttl {
    /* background: #8e1707; */
    background: linear-gradient(to right, #9f0e16 0, #c86158 40%, #c86158 60%, #9f0e16 100%);
    color: #fff;
    h4 {
      color: #fff;
    /* color: #3f57af; */
    }
  }
  .icon {
    font-size: 12px;
    color: #fff;
    background: #8e1707;
  }
  .sp-profile {
    border: rgb(87, 84, 80) thin solid;
    h5 {
    font-family: "Pinyon Script", cursive;
    font-weight: normal;
    color: #8e1707;
  }
}

}


#date-1017 .sp-profile, #date-1025 .sp-profile {
  p {
    span {
      &:nth-of-type(1) {
        font-weight: 600;
      }
      &:nth-of-type(2) {
        font-size: 0.9em;
      }
    }
  }
}


@media screen and (min-width: 900px) {

    #date-1025 {
        /* background: url(../img/event/bg_rei-tsujimoto.jpg) no-repeat top right;
        background-size: contain;
        padding-top: 0; */
    }
}


#sp_prf {
  > p {
    font-family: "Noto Serif JP", serif;
    color: #fff;
    background: #b68517;
    font-weight: 600;
    padding: 20px 30px;
    font-size: 22px;
    width: fit-content;
    margin: 0 auto 30px;
  }
}

#sp_prf {
  > div {
    padding: 30px 40px;
    box-shadow: 0 0 10px rgb(125 83 29);
    margin-bottom: 30px;
    background: #fff;
    @media print, screen and (max-width: 768px) {
      padding: 20px;
    }
    &:nth-of-type(1) {
      h5, h4 {
        color:#3f57af;
      }
    }
    &:nth-of-type(2) {
      h5, h4 {
        color:#8e1707;
      }
    }
    &:nth-of-type(3) {
      h5, h4 {
        color:#006d59;
      }
    }
    h5 {
      font-family: "Pinyon Script", cursive;
      font-weight: 600;
      /* color: #b68517; */
      font-size: 44px;
      text-align: left;
      @media print, screen and (max-width: 768px) {
        font-size: 40px;
      }
    }
    > div {
      display: flex;
      @media print, screen and (max-width: 768px) {
        flex-direction: column;
      }
      p {
          flex: 0.35;
          margin-right: 30px;
          @media print, screen and (max-width: 768px) {
            margin-right: 0;
            margin-bottom: 10px;
          }
        }
        
      > div {
          > h4 {
            font-size: 40px;
            /* color: #b68517; */
            font-family: "Noto Serif JP", serif;
            margin-bottom: 10px;
            span {
              font-size: 18px;
            }
            @media print, screen and (max-width: 768px) {
              font-size: 26px;
              span {
                font-size: 15px;
              }
            }
          }
          flex: 0.65;
          div {
            /* border: 1px solid #000;
            padding: 20px;
            margin-top: 40px; */
            h6 {
              font-family: "Pinyon Script", cursive;
              font-weight: normal;
              color: #b68517;
            }
            span {
              &:nth-of-type(1) {
                font-weight: 600;
              }
              &:nth-of-type(2) {
                font-size: 0.9em;
              }
            }
          }
          
        }
      }
    }
  }


#event {
  h4 {
    .sub {
      padding: 6px 10px;
    }
  }

  .dl-grid {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 0.5em 0.2em;
    align-items: start;
    margin-bottom: 10px;
  }
  .exception-row {
    grid-column: 1 / -1;
    display: flex;  
    gap: 0.5em;   
  }

  .exception-row .term {
    flex-shrink: 0;
  }
}


#event .all .sub {
  background: #af9d75;
}

.dl-grid {
  .term {
    &::before {
      content: '・';
    }
  }  
}

#date-1018 > div.d-sm-flex.flex-sm-row-reverse.justify-sm-between.mb-60 > div > dl > dd:nth-child(6) > ul {
  list-style: none;
  li {
    &::before {
      content: '・';
    }
  }
}
#date-1018 > div.d-sm-flex.flex-sm-row-reverse.justify-sm-between.mb-60 > div > dl > dd:nth-child(4) > div > div.desc {
  @media print, screen and (max-width: 768px) {
    margin-top: -6px;
    margin-left: 12px;
  }
}


#date-1024 {
  border-top: 1px solid #c9c9c9;
}


.other-maker {
  font-family: "Noto Serif JP", serif;
  width: 50%;
  text-align: center;
  margin: 0 auto 80px;
  padding: 40px;
  &.om-viola {
    background: #e5f2fb;
    h4 {
      background: #463e83;
    }
    dl {
      dt:nth-child(odd of dt),
      dd:nth-child(odd of dd) {
        background: #f1f9ff;
      }
    }
  }
  &.om-cello {
    background: #f2dfdd;
    h4 {
      background: #ad2a2d;
    }
    dl {
      dt:nth-child(odd of dt),
      dd:nth-child(odd of dd) {
        background: #ffebe8;
      }
    }
  }
  h4 {
      font-size: 20px;
      margin-bottom: 20px;
      width: fit-content;
      margin: 0 auto 20px;
      color: #fff;
      padding: 10px 20px;
  }
  dl {
    width: fit-content;
    margin: 0 auto;
    display: grid;
    grid-template-columns: max-content 1fr;
    /* gap: 12px 16px; */
    /* align-items: start; */
    align-items: stretch;
    dt ,dd {
      padding: 10px 20px;
      font-size: 18px;
      /* margin-bottom: 4px; */
      /* height: stretch; */
    }
    dt {
      font-weight: bold;
      text-align: left;
    }
    dd {
      margin: 0; 
      text-align: left;
    }
  }
  p {
    text-align: center;
    font-size: 18px;
  }
  @media print, screen and (max-width: 768px) {
    width: 90%;
    padding: 40px 10px;
    
    h4 {
      font-size: 18px;
    }
    dl {
      grid-template-columns: 200px 1fr;
      @media print, screen and (max-width: 390px) {
        grid-template-columns: 180px 1fr;
      }
      dt, dd {
        font-size: 16px !important;
        padding: 10px;
      }
    }
  }
    
} 

#date-1024 {
  .ev-mov {
    margin-top: 40px;
    h5 {
      /* width: fit-content; */
      padding: 10px 20px;
      font-size: 18px;
      /* background: #ad2a2d;
      color: #fff; */
      /* border-radius: 6px; */
      color: #ad2a2d;
      border-top: 4px solid #ad2a2d;
      border-bottom: 4px solid #ad2a2d;
      text-align: center;
    }
    p {
      margin: 20px 0;
    }
    div {
      &:nth-of-type(1) {
        margin-bottom: 40px;
      }
      h6 {
        font-size: 16px;
        width: fit-content;
        background: #ad2a2d;
        color: #fff;
        border-radius: 6px;
        padding: 6px 20px;
        margin-bottom: 10px;
      }
    }
  }
}

.hidetxt {
  display: none;
}

@media screen and (max-width: 768px) {
  .score_sale h5 .off {
    white-space: nowrap;
    font-size: 1.9rem;
  }
  #msc .link a {
    width: 100%;
    padding: 10px 0;
    @media screen and (max-width: 420px) {
      border-radius: 30px;
    }
  }
}