@charset "utf-8";
/* sumika yokohama 10th anniversary */

:root {
  --ff-mincho: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
  --ff-yugothic: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  /*--bg-gohead: 
    linear-gradient(
    180deg,
    rgb(0 0 0 / 10%) 0% ,
    rgb(0 0 0 / 0%) 50%,
    rgb(0 0 0 / 10%) 100%
    ),
    repeating-linear-gradient(
      135deg,
      hsl(38deg 93% 28%), 
      hsl(38deg 93% 28%) calc(var(--rs) * 0.5), 
      hsl(38deg 88% 27%) calc(var(--rs) * 0.8)
    )
    ;*/
  --bg-gohead: rgb(63 21 3 / 60%);
  /*color*/
  --c-main-01: #4b9f30;
  --c-main-02: #72ad34;
  --c-main-03: #89bf2f;
  --c-main-04: #aece20;
  --c-main-05: #e3efda;
  --c-main-06: #f6f9f2;  
}
/*-------------------------------
 css overwrite
---------------------------------*/
#yokohama10th a {
  color: var(--color-link-nml);
}
#yokohama10th a:hover {
  color: var(--color-link-nml-hover);
}
#yokohama10th a[id]:not([href]) {
    height: calc(var(--rs) * 4);
    margin-top: calc(var(--rs) * -4);
    display: block;
}
#yokohama10th .link-text__deco--more::after {
  border-color: var(--color-link-nml);
  top: -0.02em;
}
#yokohama10th .link-text__deco--more:hover::after {
  border-color: var(--color-link-nml-hover);
}
/*-------------------------------
 grand open information
---------------------------------*/
.notlink { pointer-events: none; color: #fff;}
.spporoinfobox {
  --fs: min(2.114vw,1rem);
  --rs: clamp(0.5rem, 1.042vw, 1rem);
  width: min(100%,94rem);
  padding-bottom: 0.5em;
  margin: calc(var(--rs) * 4) auto;
  background: repeating-linear-gradient(
  135deg,
  hsl(54deg 100% 80%), 
  hsl(54deg 100% 80%) calc(var(--rs) * 0.5), 
  hsl(50deg 100% 80%) calc(var(--rs) * 0.5),
  hsl(50deg 100% 80%) calc(var(--rs) * 1) 
  );
  position: relative;
}
.spporoinfobox::before {
  content: "";
  width: calc(var(--rs) * 18);
  height: calc(var(--rs) * 38);
  background: url(https://www.volks.co.jp/50th/assets/image/pj08_os_deco_confetti-l.png) 0 0 no-repeat;
  background-size: contain;
  position: absolute;
  left: calc(var(--rs) * -1);
  bottom: 0;
}
.spporoinfobox::after {
  content: "";
  width: calc(var(--rs) * 14);
  height: calc(var(--rs) * 44);
  background: url(https://www.volks.co.jp/50th/assets/image/pj08_os_deco_confetti-r.png) right 0 no-repeat;
  background-size: contain;
  filter: drop-shadow(0px 3px 3px #f7d563);
  position: absolute;
  right: calc(var(--rs) * -1);
  bottom: calc(var(--rs) * 0);
}
.spporoinfobox-heading {
  width: 100%;
  padding: calc(var(--fs) * 1);
  margin-bottom: 2rem;
  font-size: calc(var(--fs) * 2.2);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  background: #ea5283;
  color: #fff;
}
.spporoinfobox > .news-text {
  font-size: calc(var(--fs) * 1.7);
  font-weight: bold;
  text-align: center;
  width: min(96%,78rem);
  margin: 1em auto;
  position: relative;
  z-index: 1;
  text-shadow: 1px 1px 0 #fff499, -1px 1px 0 #fff499, -1px -1px 0 #fff499, 1px -1px 0 #fff499;
  filter: drop-shadow(0px 0px 3px #fff499);
}
/*-------------------------------
 grand open
---------------------------------*/
#yokohama10th {
  width: 100vw;
  padding-bottom: 0.5em;  
  margin: calc(var(--rs) * 2) calc(50% - 50vw) calc(var(--rs) * 4);
  background: 
    linear-gradient(180deg, rgb(240 245 213 / 40%) 0%, rgb(246 255 234 / 60%) 50%, rgb(240 245 213 / 60%) 100%),
    url(/event/sumikafair/assets/image/sumikafair_topImg_cmnbg.jpg) 50% 0% / calc(var(--rs) * 192) repeat,
    #F7E9CE 
    
  ;
  color: #472001;
  position: relative;
  overflow: hidden;
}
#yokohama10th-heading {
  width: 100%;
  padding: calc(var(--fs) * 1) 2%;
  padding-bottom: calc(var(--fs) * 2);
  /*margin-bottom: calc(var(--fs) * 2);*/
  font-family: var(--ff-yugothic);
  font-size: calc(var(--rs) * 3.8);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  background: #a92334;
  color: #fff;
  /*background: var(--bg-gohead);*/
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-shadow: 1px 1px 2px rgb(0 0 0 / 50%);
}
#yokohama10th-heading span {
  width: min(20%, 14rem);
  margin: 0 auto calc(var(--fs) * 0.5);
  filter: brightness(0) invert(1);
  display: block;
}
#yokohama10th-heading b {
  font-size: 125%;
}
/*-------------------------------
 grand open text
---------------------------------*/
.yokohama10th-catch {
  width: 100%;
  padding: calc(var(--fs) * 1) 2%;
  margin: 0 auto /*calc(var(--rs) * 4)*/;
  background: rgb(255 255 255 / 80%);
  color: #a92334;
  font-size: calc(var(--rs) * 2.8);
  text-align: center;
  position: relative;
}
/*.yokohama10th-catch {
  width: min(82%, 98rem);
  margin: 0 auto calc(var(--rs) * 4);
  text-align: center;
  position: relative;
}
.yokohama10th-catch span {
  padding: calc(var(--rs) * 1.8) calc(var(--rs) * 0);
  background: 
    linear-gradient(
      90deg,
      rgb(0 0 0 / 3%) 0%,
      rgb(0 0 0 / 0%) 25%,
      rgb(0 0 0 / 0%) 75%,
      rgb(0 0 0 / 2%) 100%
    ),
    var(--c-main-01)
    ;
  box-shadow: 0 3px 5px 1px rgb(0 0 0 / 10%);
  color: #fff;
  font-size: calc(var(--rs) * 2.4);
  line-height: 1.4;
  display: block;
  position: relative;
  z-index: 1;
}
.yokohama10th-catch::before,
.yokohama10th-catch::after {
  content: "";
  border: solid #c90026;
  border-width: calc(var(--rs) * 4.8) calc(var(--rs) * 4);
  position: absolute;
  bottom: 1em;
}
.yokohama10th-catch::before {
  border-left-color: transparent;
  border-left-width: calc(var(--rs) * 2.5);
  left: calc(var(--rs) * -5.5);
}
.yokohama10th-catch::after {
  border-right-width: calc(var(--rs) * 2.5);
  border-right-color: transparent;
  right: calc(var(--rs) * -5.5);
}*/
/*image*/
.yokohama10th-mainimg {
  width: 100%;
  padding: calc(var(--rs) * 2) 2% 0;
  margin: 0 auto;
  text-align: center;
}
/* text */
.yokohama10th-text {
  width: 100%;
  padding: 1em 2% 3em;
  margin: 1em auto;
  font-size: calc(var(--fs) * 0.9 + var(--rs) * 1.1);
  font-weight: bold;
  line-height: 1.8;
  text-align: center;
  text-shadow: 0 2px 3px #ffe7d4;
}
.yokohama10th-text > b {
  margin: 1em auto -0.5em;
  font-size: 112.5%;
  letter-spacing: 0.05em;
  text-align: center;
  display: block;
}
.yokohama10th-text--width {
  width: min(90%, 90rem);
}
/*-------------------------------
 open information
---------------------------------*/
.open-info {
  width: min(96%, 108rem);
  padding: calc(var(--rs) * 1);
  margin: calc(var(--rs) * 1) auto;
  background: #fff;
  box-shadow: var(--bs-cmn);
}
/* open info box */
.open-infobox {
  width: 98%;
  padding: calc(var(--fs) * 2) calc(var(--rs) * 1) 0;
  margin: calc(var(--rs) * 1) auto;
  background: #fff;
  border: 3px double var(--c-main-01);
  font-family: var(--ff-yugothic);
}
.open-infobox--grand {
  background: #fff7f3;
  outline: 3px solid var(--c-main-01);
}
.open-infobox--pre {
  background: #fdffef;
}
/* open info title */
.open-info-title {
  margin-bottom: calc(var(--rs) * 1);
  font-size: calc(var(--rs) * 1.2 + var(--fs) * 1.2);
  line-height: 1.3;
  text-align: center;
}
.open-info-title span {
  font-size: 87.5%;
  display: block;
}
/* open info period */
.open-info-period {
  color: var(--c-main-01);
  font-size: calc(var(--rs) * 1.6 + var(--fs) * 1.6);
  font-weight: bold;
  text-align: center;
}
.open-info-period small {
  font-size: 75%;
  font-weight: bold;
}
/* open info time */
.open-info-time {
  margin-top: 0.5em;
  font-size: calc(var(--fs) * 2);
  font-weight: bold;
  text-align: center;
}
/* open info text */
.open-info-text {
  width: min(94%, 76rem);
  margin: 1em auto;
  font-size: calc(var(--fs) * 1.7);
}
.open-info-text small {
  margin-top: 1em;
  font-size: calc(var(--fs) * 1.4);
  display: inline-block;
}
/* open info outline */
.open-info-grand-outline {
  width: 98%;
  margin: calc(var(--fs) * 2) auto 0;
  text-align: center;
}
.grand-outline-cont {
  margin: 0 auto;
  background: #fff;
  border: 2px solid var(--c-main-01);
  border-collapse: separate;
  border-spacing: 2px;
  
}
.grand-outline-cont th,
.grand-outline-cont td {
  padding: 0.5em 1em;;
  line-height: 1.3;
  vertical-align: middle;
}
.grand-outline-cont th {
  background: var(--c-main-01);
  color: #fff;
  font-size: calc(var(--fs) * 1.7);
  font-weight: normal;
  white-space: nowrap;
}
.grand-outline-cont td {
  background: #fff;
  border-bottom: 1px solid var(--c-main-01);
  font-size: calc(var(--fs) * 1.6);
  line-height: 1.8;
  text-align: left;
}
.grand-outline-cont td b {
  margin: 0 0.25em;
}
.grand-outline-notice {
  margin: calc(var(--fs) * 2) auto;
  font-size: calc(var(--fs) * 1.3);
  text-align: left;
  display: inline-block;
}
.grand-outline-notice li {
  margin-top: 0.5em;
  margin-right: 0.5em;
  line-height: 1.4;
  text-align: left;
  display: inline-block;
}
/*-------------------------------
 event program
---------------------------------*/
#goEP {
  width: min(96%, 108rem);
  padding: calc(var(--rs) * 1);
  margin: calc(var(--fs) * 4) auto calc(var(--fs) * 2);
  background: rgb(255 255 255 / 90%);
  box-shadow: var(--bs-cmn);
}
.goEP-title {
  padding: calc(var(--fs) * 1.5) calc(var(--fs) * 1);
  /*background: #865605;*/
  background: var(--c-main-01);
  color: #fff;
  font-size: calc(var(--fs) * 2.4);
  line-height: 1;
  text-align: center;
}
.goEP-list {
  width: min(100%, 108rem);
  padding: 1em;
  margin: 0 auto;
  display: flex;
  flex-flow: row wrap;
  counter-reset: number 0;
}
.goEP-list > div {
  width: min(100%, 32rem);
  flex: 1 1 auto;
}
.goEP-list li {
  min-height: 2.6em;
  margin: 0.4em 1em calc(var(--rs) * 1);
  margin-left: 2em;
  font-size: calc(var(--fs) * 1.6);
  font-weight: bold;
  line-height: 1.2;
}
.goEP-list li::before {
  counter-increment: number 1;
  content: counter(number,decimal/*-leading-zero*/) "";
  width: 2em;
  height: 2em;
  margin-left: -2.5em;
  margin-right: 0.5em;
  background: var(--c-main-01);
  border-radius: 50%;
  box-shadow: 2px 2px 1px 0px var(--c-main-04);
  color: #fff;
  font-weight: bold;
  line-height: 2.2em;
  text-align: center;
  display: inline-block;
}
/*-------------------------------
 event shcedule table
---------------------------------*/
.eventTable {
  width: min(96%, 108rem);
  margin: calc(var(--rs) * 2) auto;
  /*background: #6e635d;*/
  /*background: #865605;*/
  background: #cbe0dc;
  border: calc(var(--rs) * 0.7) double #fff;
  border-collapse: separate;
  border-spacing: 1px;
}
.eventTable th,
.eventTable td {
  padding: 0.5em;
  vertical-align: middle;
}
.eventTable th {
  font-size: calc(var(--rs) * 1.4);
}
.eventTable tr:nth-child(1) th {
  padding: 1em 0;
  border-bottom: 1px solid #cbe0dc/*#6e635d*/;
}
.eventTable tr:nth-child(1) th:nth-child(2) {
  background: var(--c-main-03);
}
.eventTable tr:nth-child(1) th:nth-child(3) {
  background: var(--c-main-04);
}
.eventTable tr:nth-child(1) th:nth-child(4) {
  background: #f3fdff;
}
.eventTable tr th:first-of-type {
  background: #faf7f2;
  text-align: left;
}
.eventTable tr th:not(:first-of-type) {
  border-left: 1px solid #cbe0dc/*#6e635d*/;
}
.eventTable tr:nth-child(2n+1) th:first-of-type {
  background: #fff;
}
.eventTable tr:nth-child(2n+1) th:empty {
  background: #cbe0dc/*#774d35*/;
}
.eventTable tr th:not(:first-of-type) {
  width: 22%;
}
.eventTable td {
  background: #fff;
  border-left: 1px solid #6e635d;
  font-size: calc(var(--rs) * 1.4);
  text-align: center;
  position: relative;
}
.eventTable td[colspan] {
  padding-left: 1em;
  text-align: left;
}
.eventTable tr:nth-child(2n+0) td{
  background: #faf7f2;
}
.eventTable tr:nth-child(2n+0) td:empty,
.eventTable td:empty {
  /*background: #6e635d;*/
}
.eventTable tr:nth-child(2n+0) td:empty::after,
.eventTable td:empty::after {
  content: "";
  width: calc(var(--rs) * 2);
  height: calc(var(--rs) * 0.4);
  background: #6e635d;
  border-radius: 1rem;
  position: absolute;
  top: calc(50% - var(--rs) * 0.2);
  left: calc(50% - var(--rs) * 1);
}
.eventTable td i {
  color: var(--c-main-01);/*#ff4790*/
  font-size: calc(var(--rs) * 1.8);
  font-weight: bold;
}
.eventTable td i.fa-minus {
  color: #555;
}
.eventTable {
  counter-reset: number 0;
}
.eventTable tr:not(:nth-child(1)) th {
  padding-left: 2.8em;
}
.eventTable tr:not(:nth-child(1)) th::before {
  counter-increment: number 1;
  content: counter(number,decimal/*-leading-zero*/) "";
  width: 2em;
  height: 2em;
  margin-left: -2.5em;
  margin-right: 0.5em;
  background: var(--c-main-01);
  border-radius: 50%;
  box-shadow: 1px 1px 4px 0px var(--c-main-04);
  color: #fff;
  font-weight: bold;
  line-height: 2.2em;
  text-align: center;
  display: inline-block;
}
/*-------------------------------
 co-located events
---------------------------------*/
.colocatedEvent {
  width: min(98%, 108rem);
  padding-top: calc(var(--rs) * 4);
  margin: calc(var(--rs) * 1) auto 0;
  border-top: 1px solid var(--c-main-04);
  container-type: inline-size;
}
.colocatedEvent-title {
  color: var(--c-main-01);
  font-size: calc(var(--fs) * 1.2 + var(--rs) * 1.6);
  text-align: center;
  position: relative;
}
/*同時開催イベント*/
.colocatedEvent-list {
  width: 100%;
  margin: calc(var(--rs) * 2) auto calc(var(--rs) * 1);
  display: flex;
  flex-flow: row wrap;
  align-self: center;
}
.colocatedEvent-list li {
  width: 48%;
  margin: calc(var(--fs) * 1) 1%;
  background: #fff;
  box-shadow: var(--bs-cmn);
  text-align: center;
  flex: 1 1 auto;
}
.colocatedEvent-list figcaption {
  padding: 0.5em;
}
/*-------------------------------
 event proguram
---------------------------------*/
small {
  font-weight: inherit;
}
.eventProgram {
  width: min(98%, calc(108rem + var(--rs) * 2));
  padding: 2% 0;
  margin: 0 auto;
  display: flex;
  flex-flow: row wrap;
  counter-reset: number;
}
/*.eventProgram::after,*/
.ep-cont {
  width: min(100%, 36rem);
  padding: calc(var(--rs) * 1) calc(var(--rs) * 2);
  margin: calc(var(--rs) * 2) 1%;
  background: #fff;
  font-size: calc(var(--fs) * 1.6);
  flex: 1 1 auto;
  /*display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  justify-content: center;
  gap: 1em;*/
}
.ep-cont {
  box-shadow: calc(var(--rs) * 0.8) calc(var(--rs) * 0.8)  calc(var(--rs) * 0.6) calc(var(--rs) * -0.4) rgb(75 159 48 / 60%);
  border: 1px solid var(--c-main-03);
}
/*.eventProgram::after {
  content: "";
  background: none;
  height: 0px;
}*/
.ep-title {
  width: 100%;
  min-height: 2.6em;
  padding: 0.25em 0;
  padding-left: 2em;
  font-size: calc(var(--fs) * 2);
  font-weight: bold;
  line-height: 1.3;
  display: flex;
  align-items: flex-start;
  position: relative;
}
.eventProgram div.ep-cont .ep-title::before {   
  counter-increment: number 1;
  content: counter(number, decimal /*-leading-zero*/) "";
  width: 2em;
  height: 2em;
  margin-top: -0.25em;
  margin-left: -2.5em;
  margin-right: 0.5em;
  background: var(--c-main-01);
  border-radius: 50%;
  box-shadow: 1px 1px 4px 0px var(--c-main-04);
  color: #fff;
  font-weight: bold;
  line-height: 2.2em;
  text-align: center;
  display: inline-block;
  flex-shrink: 0;
}
.ep-cont-pic {
  width: min(100%, 460px);
  padding: 0;
  margin: 0 auto;
  flex: 1 1 auto;
}
.ep-cont-detail {
  width: 100%;
  padding: 0;
  margin: 1em auto;
}
/*event program _ information*/
.ep-cont-info {
  width: 100%;
  background: rgb(255 255 255 / 90%);
  border: 1px solid var(--c-main-04);
  border-collapse: separate;
  border-spacing: 2px;
  margin-bottom: 0.75em;
}
.ep-info-tab,
.ep-info-text {
  padding: 0.5em;
  font-size: calc(var(--fs) * 1.5);
  line-height: 1.5;
}
.ep-info-tab {
  width: 5em;
  background: var(--c-main-02);
  color: #fff;
  font-weight: normal;
  text-align: center;
}
.ep-info-text {
  vertical-align: middle;
}
tr.ep-cont-date {
  background: var(--c-main-06);

}
tr.ep-cont-date + tr.ep-cont-point :is(th,td) {
  border-top: 1px solid var(--c-main-04);
}
tr.ep-cont-point .ep-info-tab {
  background: var(--c-main-01);
}
tr.ep-cont-point + tr.ep-cont-point :is(th,td) {
  border-top: 1px solid var(--c-main-05);
}
/*event program _ text*/
.ep-cont-text {
  margin-top: 1em;
  color: #603935;
  font-size: calc(var(--fs) * 1.6);
}
.ep-cont-text b {
  color: var(--c-main-01);
  font-size: 112.5%;
  font-weight: bold;
  display: inline-block;
}
.ep-notice {
  margin-top: 1em;
  font-size: calc(var(--fs) * 1.2);
  line-height: 1.3;
}
.ep-notice > * {
  padding-left: 1em;
  margin-bottom: 0.25em;
  text-indent: -1em;
}
/*item list*/
.ep-itemlist {
  width: fit-content;
  min-width: 75%;
  padding: 0.25em;
  margin: 1em 0 1em;
  background: rgb(255 255 255 / 80%);
  border: 1px solid #999;
  font-size: calc(var(--fs) * 1.4);
}
.ep-itemlist > dt {
  padding: 0.5em;
  font-weight: bold;
}
.ep-itemlist > :is(li,dd) {
  padding: 0.5em;
  line-height: 1.3;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.ep-itemlist > :is(li,dd)::before {
  content: "・";
}
.ep-itemlist > :is(li,dd) span:last-child {
  margin-left: auto;
}
.ep-itemlist > :is(li,dd):nth-child(2n) {
  background: rgb(0 0 0 / 5%);
}
/*content commentary*/
.ep-cont-comment {
  padding: 0.75em 1em;
  margin: 1em auto 2%;
  background: #f8cace;
  border: 5px double #fff;
  font-size: calc(var(--fs) * 1.4);
}
.ep-cont-comment b {
  width: 100%;
  margin-bottom: 0.5em;
  border-bottom: 1px solid;
  font-size: 112.5%;
  font-weight: bold;
  display: inline-block;
}
/*-------------------------------
  共通パーツ：関連リンク
---------------------------------*/
.rerated-link {
  width: min(90%, 64rem);
  padding: 0;
  margin: calc(var(--rs) * 2) auto calc(var(--rs) * 8);
  background: var(--color-white);
  box-shadow: 0 1px 6px  0 rgb(0 0 0 / 40%);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.rerated-link > img {
  object-fit: contain;
}
.rerated-link__banner {
  max-width: 40%;
}
.rerated-link__text {
  margin: 0 auto;
  padding: 0 1em;
}