@charset "utf-8";

@font-face {
  font-family: "krona one";
  font-style: normal;
  font-weight: 400;
  src: local(""), url("../06_fonts/KronaOne-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "KaiseiTokumin";
  font-style: normal;
  font-weight: 400;
  src: local(""),
    url("../06_fonts/KaiseiTokumin-Regular.ttf") format("truetype"),
    url("../06_fonts/KaiseiTokumin-Bold.ttf") format("truetype"),
    url("../06_fonts/KaiseiTokumin-ExtraBold.ttf") format("truetype"),
    url("../06_fonts/KaiseiTokumin-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  src: local(""),
    /* url('../fonts/Inter-Black.ttf') format('truetype'), 
       url('../fonts/Inter-Bold.ttf') format('truetype'), 
       url('../fonts/Inter-ExtraBold.ttf') format('truetype'), 
       url('../fonts/Inter-ExtraLight.ttf') format('truetype'), 
       url('../fonts/Inter-Light.ttf') format('truetype'), 
       url('../fonts/Inter-Medium.ttf') format('truetype'), 
       url('../fonts/Inter-Regular.ttf') format('truetype'), 
       url('../fonts/Inter-SemiBold.ttf') format('truetype'), 
       url('../fonts/Inter-Thin.ttf') format('truetype'),  */
      url("../06_fonts/Inter-VariableFont_slnt,wght.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 400;
  src: local(""),
    url("../06_fonts/RobotoCondensed-VariableFont_wght.ttf") format("truetype");
}

*,
*::before,
*::after {
  box-sizing: border-box;
}
html,
body {
  height: 100%;
}
/* main:after {

  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  content: "";
  z-index: -1;
  background-image: linear-gradient(to left top, #f3d7c8, #f5ddc8, #f5e3ca, #f4eacd, #f1f1d1);
  
} */

main {
  background-color: #F9F1D9;
  position: relative;
}

.home,
.details {
  padding-top: 10%;
}
.lu_up {
  padding-top: 3%;
  /* background: #fff7e7; */
  background: #F9F1D9;
}
.access {
  padding-top: 8%;
}

.pc_menu {
  display: none;
}
.pc_flex {
  display: block;
}
.pc_dlbtn {
  display: none;
}
.pc_h1_title {
  display: none;
}
.pc_day {
  display: none;
}
.pc_block{
  display: none;
}
.pc_block_stfpro {
  display: none;
}

@media screen and (min-width: 1025px) {
  main {
    /* z-index: -2; */
  }
  #wapper {
    display: flex;
  }
  .sp_menu {
    display: none;
  }
  .pc_menu {
    display: block;
    width: 22%;
    position: fixed;
    background: #ffffff;
  }
  .lu_up {
    padding-top: 2%;
  }
  .pc_block {
    display: block;
  }
  .pc_block_stfpro {
    display: block;
  }
  .main_content {
    width: 78%;
    margin-left: 22%;
    /* flex-basis: 80%; */
    overflow: hidden;
  }
  .home,
  .details {
    padding-top: 5%;
  }
  .access {
    padding-top: 10%;
  }
  .pc_flex {
    display: flex;
  }
}

/*-----------------------------
定数定義
-------------------------------*/
:root {
  --main-color: #f6ede6;
  --honda-color: rgb(204, 21, 21);
  --suzunari-color: rgb(102, 102, 102);
  --ekimae-color: rgb(0, 70, 70);
  --offoff-color: rgb(0, 128, 128);
  --gekisho-color: rgb(70, 130, 180);
  --rakuen-color: rgb(240, 128, 128);
  --theater711-color: rgb(116, 0, 139);
  --b1-color: rgb(0, 0, 139);
  --novyi-color: #9f741f;
  --townhall-color: #007754;

  --me_title_fs: 13vw;
  --accent_fs: 14vw;
  --btn_txt_fs: 4.2vw;
  --btn_txt2_fs: 3.8vw;
  --btn_txt2_mark: 3.6vw;
}

@media screen and (min-width: 1025px) {
  :root {
    --me_title_fs: 3vw;
    --accent_fs: 4vw;
    --btn_txt_fs: 1vw;
    --btn_txt2_fs: 0.7vw;
    --btn_txt2_mark: 0.85vw;
  }
}

/*-----------------------------
色の制御
------------------------------*/
/* 各劇場イメージカラー */
.honda_bgcolor {
  background-color: var(--honda-color, #695252);
}
.suzunari_bgcolor {
  background-color: var(--suzunari-color, #695252);
}
.ekimae_bgcolor {
  background-color: var(--ekimae-color, #695252);
}
.offoff_bgcolor {
  background-color: var(--offoff-color, #695252);
}
.gekisho_bgcolor {
  background-color: var(--gekisho-color, #695252);
}
.rakuen_bgcolor {
  background-color: var(--rakuen-color, #695252);
}
.theater711_bgcolor {
  background-color: var(--theater711-color, #695252);
}
.b1_bgcolor {
  background-color: var(--b1-color, #695252);
}
.novyi_bgcolor {
  background-color: var(--novyi-color, #695252);
}
.townhall_bgcolor{
  background-color: var(--townhall-color, #695252);
}
body {
  /* font-family:'Inter','Noto Sans JP', sans-serif; */
  font-family: "Noto Sans JP", sans-serif;
  /* iphone対応 */
  /* -webkit-appearance: none; */
  -webkit-text-size-adjust: 100%;
  color: #111111;
}

header {
  width: 100%;
}
.stf_audition {
  position: relative;
  width: 100%;
  height: 180px;
  background-color: #f6ede6;
  z-index: 5000;
}
.stf_audition .audition_btn {
  width: 86%;
  aspect-ratio: 16 / 2;
  margin: 0 auto;
  background: #ec7b9c;
  border-radius: 2vw;
  display: flex;
  align-items: center;
  text-align: center;
  padding-left: 19%;
  position: absolute;
  top: 13%;
  left: 7%;
  filter: drop-shadow(0 0.3vw 0 rgba(0, 0, 0, 0.25));
}
.audition_btn a {
  z-index: 100;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0%;
}
.audition_btn:hover {
  opacity: 0.6;
}
.audition_btn .audition_btntext {
  color: #fff;
  font-size: 1.55vw;
  font-weight: 600;
  line-height: normal;
  position: relative;
}

@media screen and (max-width: 1024px) {
  .sp_none {
    display: none;
  }
  .stf_audition {
    position: relative;
    width: 100%;
    height: 25vw;
  }
  .stf_audition .audition_btn {
    width: 86%;
    aspect-ratio: 16 / 4;
    padding-left: 7%;
    top: 10%;
    left: 7%;
    filter: drop-shadow(0 1.5vw 0 rgba(0, 0, 0, 0.25));
  }
  .audition_btn .audition_btntext {
    font-size: 3.3vw;
  }
}

#g-nav-list .me_title {
  width: 100%;
  margin: 9% 0 11% 0;
  padding: 0 0 0 8%;
}
.g-nav-list .pc_me_title {
  width: 100%;
  margin: 10% 0 3% 0;
}

.me_title {
  font-family: "krona one";
  font-size: var(--me_title_fs);
  text-align: center;
}
.pc_me_title {
  font-family: "krona one";
  font-size: var(--me_title_fs);
  padding: 0 0 0 15%;
  display: flex;
}

.me_title a,
.pc_me_title a {
  color: #939393;
  text-decoration: none;
}
#g-nav-list .menu_box,
.g-nav-list .menu_box {
  width: 100%;
  aspect-ratio: 16 / 7;
}
.menu_box .menu_top {
  width: 82%;
  margin: 0 0 0 5%;
  height: 100%;
  background: #f6ede6;
  margin-top: 10%;
  padding: 2% 0 2% 0;
  font-size: 3.8vw;
  font-family: "inter";
}
.menu_box .menu_bottom {
  width: 70%;
  margin: 0 0 0 20%;
  height: 7.25rem;
  background: #c1b2b2;
}
.menu_box .menu_contact {
  position: relative;
  width: 80%;
  margin: 0 0 0 10%;
  aspect-ratio: 16 / 3;
  background: #c1b2b2;
  line-height: 1.3;
  text-align: center;
}
.menu_contact p {
  font-size: 0.8vw;
}

.me_home,
.me_lineup,
.me_stfprogram {
  position: relative;
  width: 100%;
  height: 33%;
  padding: 0 0 0 10%;
  background: #f6ede6;
  display: flex;
  align-items: center;
}
.me_home a,
.me_lineup a,
.me_stfprogram a {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  margin-left: -10%;
}
.me_home a:hover,
.me_stfprogram a:hover {
  background: rgba(123, 123, 123, 0.2);
}
.me_lineup:hover {
  background: rgba(123, 123, 123, 0.2);
  cursor: pointer;
}
.me_lineup .pcme_lu {
  position: absolute;
  top: -553%;
  left: 105%;
  width: 0;
  height: 102vh;
  background-color: #ffffff;
  overflow: hidden;
  /* transition: width .2s ease-out; */
  padding: 4% 0 4% 0;
  z-index: 10050;
  cursor: default;
}
.pcme_lu.isShow {
  display: block;
  width: 60vw;
  overflow-y: scroll;
}

/* .ModalLayer-Mask2 {
  position: absolute;
  z-index: 1;
  background: rgba(123,123,123,0.5);
  width: 100%;
  height: 100vh;
}
.ModalLayer-Inner2 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 90%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  height: 85vh;
  overflow-y: scroll;
  overscroll-behavior-y: contain;
  padding-bottom: 5%;
} */

/* .me_lineup{
  width: 100%;
  height: 33%;
  padding: 0 0 0 10%;
  background: #f0bbbb;
  line-height: 3;
}
.me_stfprogram{
  width: 100%;
  height: 33%;
  padding: 0 0 0 10%;
  background: #b2bdc1;
  line-height: 3;
} */
/* .menu_top a{
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
} */
/*-----------------------------
　アンカーリンク（トップ）
------------------------------*/
#page-top a,
#page-top2 a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 13vw;
  height: 13vw;
  border-radius: 50%;
  text-transform: uppercase;
  -webkit-text-transform: uppercase;
  -ms-text-transform: uppercase;
  -moz-text-transform: uppercase;

  text-decoration: none;
  transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -moz-transition: all 0.3s;
  opacity: 0.6;
  border: solid 1vw #824920;
}
#page-top2 a {
  width: 15vw;
  height: 13vw;
  margin: 2vw 5vw 2vw 0;
  z-index: 9999;
}

#page-top a::before,
#page-top2 a::before {
  content: "";
  display: inline-block;
  width: 5vw;
  height: 5vw;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -moz-transform: rotate(45deg);

  border-top: solid 1vw #824920;
  border-left: solid 1vw #824920;
}

#page-top a.isShow::after,
#page-top2 a.isShow::after {
  position: absolute;
  content: "トップ";
  top: -25px;
  font-size: 12px;
  font-family: "Noto Sans JP";
  font-weight: 600;
  color: #824920;
}
#page-top a:hover,
#page-top2 a:hover {
  opacity: 1;
}

/*リンクを右下に固定*/
#page-top {
  position: fixed;
  right: 20px;
  bottom: 10px;
  z-index: 9999;
  /*はじめは非表示*/
  opacity: 0;
  transform: translateY(100px);
  -webkit-transform: translateY(100px);
  -ms-transform: translateY(100px);
  -moz-transform: translateY(100px);
  text-align: center;
}
/*リンクを右下に固定*/
#page-top2 {
  position: fixed;
  bottom: 0;
  z-index: 9999;
  /*はじめは非表示*/
  opacity: 0;
  transform: translateY(100px);
  -webkit-transform: translateY(100px);
  -ms-transform: translateY(100px);
  -moz-transform: translateY(100px);
  text-align: center;
  width: 100%;
  display: flex;
  background: rgba(255, 255, 255, 0.6);
}

/* 上に上がる動き */
#page-top.UpMove,
#page-top2.UpMove {
  animation: TopUpAnime 1s forwards;
}

@media screen and (min-width: 1025px) {
  #page-top a,
  #page-top2 a {
    width: 3.25vw;
    height: 3.25vw;
    border: solid 0.35vw #824920;
  }
  #page-top2 a {
    width: 3.25vw;
    height: 3.25vw;
    margin: 0;
  }
  #page-top a::before,
  #page-top2 a::before {
    width: 1.2vw;
    height: 1.2vw;
    border-top: solid 0.35vw #824920;
    border-left: solid 0.35vw #824920;
  }
  #page-top2 {
    right: 20px;
    bottom: 10px;
    width: 3.25vw;
    height: 3.25vw;
    display: block;
    /* background: rgba(255, 255, 255, 0.6); */
    background: none;
  }
}

@keyframes TopUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
    -webkit-transform: translateY(100px);
    -ms-transform: translateY(100px);
    -moz-transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    -moz-transform: translateY(0);
  }
}

/* 下に下がる動き */
#page-top.DownMove,
#page-top2.DownMove {
  animation: TopDownAnime 0.5s forwards;
}
@keyframes TopDownAnime {
  from {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    -moz-transform: translateY(0);
  }
  to {
    opacity: 1;
    transform: translateY(100px);
    -webkit-transform: translateY(100px);
    -ms-transform: translateY(100px);
    -moz-transform: translateY(100px);
  }
}

/*-----------------------------
 ハンバーガーメニュー
-------------------------------*/
.g-navLayer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  transition: opacity 0.65s;
  -webkit-transition: opacity 0.65s;
  -ms-transition: opacity 0.65s;
  -moz-transition: opacity 0.65s;
  pointer-events: none;
  opacity: 0;
  z-index: 9000;
}
.g-navLayer.isShow {
  transition: opacity 0.65s;
  -webkit-transition: opacity 0.65s;
  -ms-transition: opacity 0.65s;
  -moz-transition: opacity 0.65s;
  pointer-events: auto;
  opacity: 1;
}
.g-navLayer-Mask {
  position: absolute;
  background: rgba(123, 123, 123, 0.5);
  width: 100%;
  height: 100vh;
}

#g-nav {
  font-family: "Noto Sans JP";
  /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
  position: fixed;
  z-index: 999;
  /*ナビのスタート位置と形状*/
  top: 0;
  right: 89%;
  width: 89%;
  height: 100vh; /*ナビの高さ*/
  background: rgba(255, 255, 255, 0.95);
  /*動き*/
  transition: all 0.6s;
  -webkit-transition: all 0.6s;
  -ms-transition: all 0.6s;
  -moz-transition: all 0.6s;
}
/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive {
  right: 11%;
}
/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list {
  /*ナビの数が増えた場合縦スクロール*/
  position: fixed;
  z-index: 999;
  width: 89%;
  height: 100vh; /*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
  /*ナビゲーション天地中央揃え*/
  position: absolute;
  z-index: 999;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
}
/*---------------
  Xエックスボタン
---------------*/
.snsbtn {
  position: fixed;
  z-index: 9998; /*ボタンを最前面に*/
  top: 0;
  margin-top: 8%;
  right: 0;
  margin-right: 5%;
  cursor: pointer;
  background-color: rgb(255, 255, 255);
  border: solid 1px #000;
  width: 13%;
  aspect-ratio: 1;
  border-radius: 50%;
}
.snsbtn a,
.pc_snsbtn a {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.snsbtn img {
  transform: translate(40%, 40%);
  display: block;
  width: 7vw;
  height: 7vw;
}
.pc_snsbtn {
  position: relative;
  cursor: pointer;
  background-color: rgb(255, 255, 255);
  border: solid 1px #000;
  margin-left: 5%;
  width: 16%;
  aspect-ratio: 1;
  border-radius: 50%;
}
.pc_snsbtn img {
  transform: translate(47%, 47%);
  display: block;
  width: 1.5vw;
  height: 1.5vw;
}
/*---------------
  menuボタン
---------------*/
.openbtn1 {
  position: fixed;
  z-index: 9999; /*ボタンを最前面に*/
  top: 0;
  margin-top: 8%;
  left: 0;
  margin-left: 5%;

  cursor: pointer;
  /* background-color: rgba(210, 42, 49, 0.8); */
  width: 13%;
  /* height: 10%; */
  aspect-ratio: 1;
  /* border-radius: 50%; */
}
.openbtn1.active {
  /* background-color: #333333; */
}

/*×に変化*/
.openbtn1 span {
  display: inline-block;
  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -moz-transition: all 0.4s;
  position: absolute;
  /* left: 14px; */
  height: 5px;
  border-radius: 0px 5px 5px 0px;
  background-color: rgb(0, 0, 0);
  width: 90%;
}
.openbtn1 span:nth-of-type(1) {
  top: 2vw;
}
.openbtn1 span:nth-of-type(2) {
  top: 6vw;
}
.openbtn1 span:nth-of-type(3) {
  top: 10vw;
}
.openbtn1.active span:nth-of-type(1) {
  top: 18px;
  transform: translateY(6px) rotate(-45deg);
  -webkit-transform: translateY(6px) rotate(-45deg);
  -ms-transform: translateY(6px) rotate(-45deg);
  -moz-transform: translateY(6px) rotate(-45deg);
  width: 100%;
}
.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}
.openbtn1.active span:nth-of-type(3) {
  top: 30px;
  transform: translateY(-6px) rotate(45deg);
  -webkit-transform: translateY(-6px) rotate(45deg);
  -ms-transform: translateY(-6px) rotate(45deg);
  -moz-transform: translateY(-6px) rotate(45deg);
  width: 100%;
}

/*-----------------------------
　オーバーレイモーダル
-------------------------------*/
.JS_Click_ShowModal_Trigger:hover {
  cursor: pointer;
}

.ModalLayer,
.ModalLayer2 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  transition: opacity 0.65s;
  -webkit-transition: opacity 0.65s;
  -ms-transition: opacity 0.65s;
  -moz-transition: opacity 0.65s;
  pointer-events: none;
  opacity: 0;
  z-index: 10000;
}
.ModalLayer.isShow,
.ModalLayer2.isShow {
  transition: opacity 0.65s;
  -webkit-transition: opacity 0.65s;
  -ms-transition: opacity 0.65s;
  -moz-transition: opacity 0.65s;
  pointer-events: auto;
  opacity: 1;
}
.ModalLayer-Mask {
  position: absolute;
  background: rgba(123, 123, 123, 0.5);
  width: 100%;
  height: 100vh;
}
.ModalLayer-Inner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 90%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  height: 85vh;
  overflow-y: scroll;
  overflow-x: hidden;
  overscroll-behavior-y: contain;
  padding-bottom: 5%;
}

/*---------------
　参加団体一覧オーバーレイ
---------------*/
.lu_over_box {
  width: 100%;
  height: 100%;
  padding: 4% 0 4% 0;
}
.lu_over_content {
  margin: 0 auto;
  width: 100%;
  height: auto;
  padding: 5% 2%;
  background: #ffffff;
  position: relative;
}

.lu_over_closebtn1 {
  width: 8vw;
  height: 8vw;
  line-height: 7vw;
  background-color: rgb(255, 255, 255);
  border-radius: 50%;
  border: solid 0.3vw #000;
  color: #fff;
  text-align: center;
  top: -0.8%;
  right: 0.1%;
  position: absolute;
}
.dli-close1 {
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  width: 65%;
  height: 3.5%;
  background: currentColor;
  border-radius: 0.1em;
  position: relative;
  transform: rotate(45deg);
}

.dli-close1::before {
  vertical-align: middle;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  border-radius: inherit;
  transform: rotate(90deg);
}
.lu_over_contenterea {
  margin: 0 auto;
  width: 95%;
  display: flex;
  position: relative;
}
.lu_over_contenterea a {
  display: block;
  position: absolute;
  top: 0;
  left: 0%;
  width: 102%;
  height: 100%;
  z-index: 1;
}
.lu_over_contenterea2 {
  margin-left: 4%;
  width: 95%;
  display: flex;
  position: relative;
}
.lu_over_contenterea2 a {
  display: block;
  position: absolute;
  top: 0;
  left: 0%;
  width: 102%;
  height: 100%;
  z-index: 1;
}

.lu_over_contenterea a:hover {
  background: rgba(123, 123, 123, 0.2);
}
.lu_over_contenterea2 a:hover {
  background: rgba(123, 123, 123, 0.2);
}

.lu_over_list_line {
  width: 95%;
  height: 0.2vw;
  margin: 2% auto;
  background-color: rgb(0, 0, 0);
}
.lu_over_img_erea {
  width: 100%;
  height: auto;
  flex-basis: 20%;
  background: #007754;
}
.lu_over_img_box {
  aspect-ratio: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #8b7610;
  margin: 0 auto;
  position: relative;
}
.lu_over_img_box img {
  position: absolute;
  /* top: -50%; */
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.lu_over_list_box {
  /* width: 100%;
  height: 100px; */
  flex-basis: 80%;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
}
.lu_over_list_text {
  display: block;
  padding-left: 10%;
  font-size: 3.2vw;
  font-weight: 600;
}
.lu_over_list_text2 {
  display: block;
  padding-left: 8%;
  font-size: 3.2vw;
  font-weight: 600;
}
.font2vw {
  font-size: 2.1vw;
}
.lu_over_list_btnbox {
  width: 50%;
  aspect-ratio: 16 / 2.3;
  border-radius: 3vw;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 10%;
}
.lu_over_list_btn {
  color: #fff;
  font-size: 3vw;
}
.lu_over_list_btnbox::after {
  position: absolute;
  content: "";
  display: inline-block;
  right: -3%;
  bottom: 5%;
  width: 6vw;
  height: 6vw;
  background: url(../03_img/lu_yajirusi.png) no-repeat;
  background-size: contain;
}
.lu_over_closebtn2 {
  width: 12vw;
  height: 12vw;
  line-height: 11vw;
  background-color: rgb(255, 255, 255);
  border-radius: 50%;
  border: solid 0.1vw #000;
  color: #fff;
  text-align: center;
  margin: 0 auto;
}
.dli-close2 {
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  width: 65%;
  height: 3.5%;
  background: currentColor;
  border-radius: 3vw;
  position: relative;
  transform: rotate(45deg);
}

.dli-close2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  border-radius: inherit;
  transform: rotate(90deg);
}

.supple {
  width: 16vw;
  font-size: 3vw;
  aspect-ratio: 16 / 5;
  background-color: #e1e2cc;
  text-align: center;
  line-height: 5vw;
  margin: 0% 0 3% 2.5%;
}
@media screen and (min-width: 1025px) {
  .supple {
    width: 6vw;
    font-size: 0.8vw;
    aspect-ratio: 16 / 4;
    background-color: #e1e2cc;
    text-align: center;
    line-height: 1.7vw;
    margin: 3% 0 0 4%;
  }
  .lu_over_content {
    display: flex;
    flex-wrap: wrap;
    padding: 2% 0% 5% 0;
  }
  .lu_over_contenterea {
    width: 42%;
  }
  .lu_over_contenterea a {
    left: 10%;
  }
  .lu_over_contenterea2 {
    width: 42%;
  }
  .lu_over_contenterea2 a {
    left: 10%;
  }
  .lu_over_list_line {
    height: 0.05vw;
    margin: 0.9% auto;
  }
  .lu_over_list_text {
    display: block;
    padding-left: 10%;
    font-size: 0.8vw;
  }
  .lu_over_list_text2 {
    display: block;
    padding-left: 8%;
    font-size: 0.8vw;
  }
  .font2vw {
    font-size: 0.6vw;
  }
  .font2_8vw {
    font-size: 0.6vw;
    padding-top: 1%;
    line-height: 1.2;
    display: inline-block;
  }
  .lu_over_list_btnbox::after {
    right: -3%;
    bottom: 5%;
    width: 1vw;
    height: 1vw;
  }
  .lu_over_list_btn {
    color: #fff;
    font-size: 0.7vw;
  }
}

/* .ModalLayer-Inner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 90%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);

  height: 80%;
  overflow-y: scroll;
  background: rgb(255, 255, 255);
}
.ModalSection {
  padding: 39px 88px 40px 88px;
  background: #fff;
} */
/* .Modal-Inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 90%;
} */
/* .Modal-Inner-Headline {
  border-top: 3px solid #D22A31;
  border-bottom: 3px solid #D22A31;
  padding-top: 20px;
  padding-bottom: 20px;
  text-align: center;
} */
/* .Modal-Inner-Text {
  padding-top: 40px;
} */

/*-- homeCSS --*/

/*---------------
  メイン画像
---------------*/

.sp_home_img_box {
  width: 100%;
  height: auto;
  position: relative;
  /* z-index: -1; */
}
.sp_home_img_box .sp_main_img {
  display: block;
  margin: 0 auto;
  width: 100%;
}
.home_img_box {
  width: 100%;
  height: auto;
  position: relative;
  /* z-index: -1; */
}
.home_img_box img {
  display: none;
  margin: 0 auto;
  width: 100%;
}

.home_logo_box {
  width: 100%;
  height: auto;
  margin-bottom: 10%;
}
.home_logo_box .logo_img {
  display: block;
  margin: 0 auto;
  width: 58%;
  margin-bottom: 5%;
}
.pc_logo_img {
  display: block;
  margin: 15% auto 5% auto;
  width: 70%;
}

.btn_box {
  display: flex;
  width: 100%;
  margin: 6% auto;
}
.main_img {
  display: none;
}

@media screen and (min-width: 1025px) {
  .home_img_box {
    width: 100%;
    height: auto;
    position: relative;
    /* z-index: -1; */
    padding: 3.5% 15% 0% 14%;
  }
  .home_img_box img {
    width: 100%;
    display: block;
    margin: -20% 0 0 -9%;
  }
  /* .home_img_box::before{
    position: absolute;
    display: block;
    content: "";
    background: url(../03_img/STF_ロゴ\　縦.png) no-repeat;
    background-size: contain;
    width: 17vw;
    height: 17vw;
    top: 55%;
    left: 8%;
    transform: rotate(-9deg) ;
  }
  .home_img_box::after{
    position: absolute;
    display: block;
    content: "";
    background: url(../03_img/梅の木.png) no-repeat;
    background-size: contain;
    width: 33vw;
    height: 34vw;
    top: 59%;
    left: -10%;
    transform: rotate(3deg);
  } */

  .pc_none {
    display: none;
  }
}
/*---------------
公演ラインナップボタン
---------------*/

.btn_box .lineup_btn {
  position: relative;
  width: 43%;
  aspect-ratio: 1;
  margin: 0 2% 0 5%;
  background: #8b392b;
  border-radius: 0.625rem;
  filter: drop-shadow(0 1.5vw 0 rgba(0, 0, 0, 0.25));
}

.lineup_btn a {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.lineup_btn .lineup_btnicon {
  width: 100%;
}
.lineup_btnicon img {
  display: block;
  margin: 17% auto 8%;
  width: 35%;
}
.lineup_btntext1 {
  color: #f6ede6;
  text-align: center;
  font-size: var(--btn_txt_fs);
  font-weight: 700;
  line-height: 124%;
  display: block;
  font-family: "Inter";
}
.lineup_btntext2 {
  color: #f6ede6;
  display: block;
  margin: 0 10% 0 0;
  font-size: var(--btn_txt2_fs);
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.4vw;
  position: relative;
  font-family: "Inter";
}
@media screen and (min-width: 1025px) {
  .lineup_btntext2 {
    letter-spacing: 0.15vw;
  }
}

.lineup_btntext2::after {
  position: absolute;
  content: "";
  display: inline-block;
  width: var(--btn_txt2_mark);
  height: var(--btn_txt2_mark);
  top: 20%;
  right: 12%;
  background: url(../03_img/yajirusi.png) no-repeat;
  background-size: contain;
  margin-left: 2%;
}

/*---------------
  劇場マップボタン
---------------*/

.btn_box .theatermap_btn {
  position: relative;
  width: 43%;
  aspect-ratio: 1;
  margin: 0 5% 0 2%;
  background: #8b392b;
  border-radius: 0.625rem;
  filter: drop-shadow(0 1.5vw 0 rgba(0, 0, 0, 0.25));
}
.theatermap_btn a {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.theatermap_btn .theatermap_btnicon {
  width: 100%;
}
.theatermap_btnicon img {
  display: block;
  margin: 17% auto 8%;
  width: 35%;
}
.theatermap_btntext1 {
  color: #f6ede6;
  text-align: center;
  font-size: var(--btn_txt_fs);
  font-weight: 700;
  line-height: 124%;
  display: block;
  font-family: "Inter";
}
.theatermap_btntext2 {
  color: #f6ede6;
  display: block;
  margin: 0 10% 0 0;
  font-size: var(--btn_txt2_fs);
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.4vw;
  position: relative;
  font-family: "Inter";
}

.theatermap_btntext2::after {
  position: absolute;
  content: "";
  display: inline-block;
  width: var(--btn_txt2_mark);
  height: var(--btn_txt2_mark);
  top: 20%;
  right: 23%;
  background: url(../03_img/yajirusi.png) no-repeat;
  background-size: contain;
  margin-left: 2%;
}
@media screen and (min-width: 1025px) {
  .btn_box .lineup_btn,
  .btn_box .theatermap_btn {
    filter: drop-shadow(0 0.5vw 0 rgba(0, 0, 0, 0.25));
  }
  .menu_box .menu_top {
    margin: 0 0 0 9%;
  }
  .menu_box .menu_top .me_menu {
    font-size: 0.9vw;
  }
  .btn_box .lineup_btn {
    /* width: 43%; */
    margin: 0 2% 0 9%;
  }
  .btn_box .theatermap_btn {
    margin: 0 9% 0 2%;
  }
  .pc_h1_title {
    display: block;
    font-size: 2vw;
    margin: 0% 0 25% -31%;
  }
  .pc_day {
    display: block;
    height: auto;
    display: flex;
    align-items: flex-end;
    margin-top: 3%;
  }
  .pc_yearnum {
    color: #000;
    font-size: 2vw;
    font-family: "KaiseiTokumin";
    font-weight: 700;
    display: block;
  }
  .pc_daynum {
    color: #000;
    font-size: 3vw;
    font-family: "KaiseiTokumin";
    font-weight: 700;
    display: block;
    padding-left: 2%;
  }
  .pc_lu_day {
    color: #000;
    font-size: 2vw;
    font-family: "KaiseiTokumin";
    font-weight: 700;
    display: block;
    padding-left: 20%;
  }
  .pc_day_icon {
    width: 0;
    height: 0;
    border-top: solid 0.6vw transparent;
    border-bottom: solid 0.6vw transparent;
    border-left: solid 1vw #333333;
    margin: 0 1% 1% 4%;
  }
}
/*---------------
  パンフレットDLボタン
---------------*/
.programdl_box {
  width: 100%;
}
.programdl_box .programdl_btn {
  width: 90%;
  aspect-ratio: 16 / 3;
  margin: 4% auto;
  background: #60699f;
  border-radius: 3vw;
  display: flex;
  /* justify-content: center; */
  align-items: center;
  padding-left: 33%;
  filter: drop-shadow(0 1.5vw 0 rgba(0, 0, 0, 0.25));
  position: relative;
}
.programdl_btn a {
  z-index: 100;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0%;
}
.programdl_btn .programdl_btntext {
  color: #fff;
  font-size: 3.2vw;
  font-weight: 600;
  line-height: normal;
  position: relative;
}
.programdl_btntext::before {
  position: absolute;
  content: "";
  top: -17%;
  left: -24%;
  display: inline-block;
  width: 14vw;
  height: 14vw;
  background: url(../03_img/dl_img.png) no-repeat;
  background-size: contain;
  margin-left: -23%;
}
@media screen and (min-width: 1025px) {
  .pc_dlbtn {
    display: block;
  }
  .programdl_box{
    margin: 0% 0% 0% -6%;
  }
  .programdl_box .programdl_btn {
    width: 100%;
    aspect-ratio: 16 / 3;
    margin: 4% auto;
    background: #60699f;
    border-radius: 1.5vw;
    display: flex;
    /* justify-content: center; */
    align-items: center;
    padding-left: 36%;
    margin: 10% 0 0 -25%;
    filter: drop-shadow(0 0.3vw 0 rgba(0, 0, 0, 0.25));
  }
  .programdl_btn .programdl_btntext {
    font-size: 1vw;
    line-height: normal;
    position: relative;
  }
  .programdl_btntext::before {
    top: -35%;
    left: -30%;
    width: 5vw;
    height: 5vw;
  }
}
/*---------------
  最新情報
---------------*/
.news_box {
  width: 100%;
  height: auto;
  margin: 25% auto -25% auto;
}

.accent {
  position: absolute;
  top: -10%;
  display: block;
  font-family: "krona one";
  font-size: var(--accent_fs);
  color: #ffb174;
}
.accent_news {
  top: -18%;
  left: -1%;
}
.accent_ab {
  top: -9%;
}
.accent_gr {
  top: -100%;
  left: 5%;
}
.accent_sns {
  top: -10%;
}
.accent_info {
  top: -4%;
}

.news_box .news_content {
  position: relative;
  margin: 0 auto;
  width: 90%;
  height: auto;
  background: #ffffff;
  padding: 5% 0 5% 0;
  border-radius: 4vw;
}
.news_title {
  font-size: 4.5vw;
  padding: 5%;
  font-family: "KaiseiTokumin";
  letter-spacing: 0.3vw;
  position: relative;
}
/* .news_title::before{
  position: absolute;
  content: "news";
  font-family: 'krona one';
  color: #FFB174;
  font-size: 13vw;
  top: -100%;
  left: 0%;
  display: inline-block;
} */
.news-list {
  width: 90%;
  list-style: none outside;
  margin: 0 auto;
  padding: 0;
  /* height: 320px; */
}
.news-list .item span {
  display: flex;
  flex-wrap: wrap;
  flex-wrap: nowrap;
  text-decoration: none;
  color: #333;
  border-top: 1px solid #333333;
  padding: 5% 1%;
}
.news-list .item .date {
  font-size: 3.8vw;
  font-weight: 500;
  margin: 0;
  min-width: 30%;
  color: #333333;
  line-height: 6vw;
}
.news-list .item .title {
  margin: 0;
  width: 100%;
  font-weight: 500;
  font-size: 3.8vw;
  color: #333333;
  line-height: 6vw;
}
.news-list .item a {
  color: #333333;
  text-decoration: underline;
}
.news-list .item a:hover {
  text-decoration: none;
}
@media screen and (min-width: 1025px) {
  .news_box {
    margin: 10% 0% 10% -6%;
  }
  .accent {
    top: -12%;
  }
  .news_box .news_content {
    width: 100%;
    aspect-ratio: 16 / 13;
    padding: 0 0 5% 0;
    border-radius: 1vw;
    margin: 20% 0 0 -25%;
  }
  .news_title {
    font-size: 1.3vw;
    padding: 10% 10% 4% 6%;
  }
  .news-list .item .date {
    font-size: 0.9vw;
    min-width: 30%;
    line-height: 1.3vw;
  }
  .news-list .item .title {
    width: 100%;
    font-size: 0.9vw;
    line-height: 1.3vw;
  }
  .news-list {
    width: 90%;
    list-style: none outside;
    margin: 0 5%;
    padding: 0;
    /* height: 320px; */
    /* overflow-y: scroll; */
  }
}
/*---------------
  下北沢演劇祭とは
---------------*/

.about_box {
  width: 100%;
  height: auto;
  margin: 20% auto -28% auto;
}
.about_box .about_content {
  position: relative;
  margin: 0 auto;
  width: 90%;
  height: auto;
  background: #ffffff;
  padding: 5% 0 10% 0;
  border-radius: 4vw;
}
.about_title {
  font-size: 4.5vw;
  padding: 5%;
  font-family: "KaiseiTokumin";
  letter-spacing: 0.2vw;
  position: relative;
}
/* .about_title::before{
  position: absolute;
  content: "about";
  font-family: 'krona one';
  color: #FFB174;
  font-size: 13vw;
  top: -100%;
  left: 0%;
  display: inline-block;
} */
.about_content p {
  padding: 5%;
  font-size: 3.8vw;
  line-height: 6vw;
}
.about_img {
  width: 100%;
  height: 100px;
  position: relative;
}
.about_img img {
  display: block;
  margin: 0 auto;
  width: 28%;
  position: absolute;
  /* height: auto; */
  bottom: 100%;
  right: 5vw;
}
.about_img2 {
  width: 100%;
  height: 100px;
  position: relative;
}
.about_img2 img {
  display: block;
  margin: 0 auto;
  width: 15%;
  position: absolute;
  /* height: auto; */
  top: -68vw;
  right: 5vw;
}
@media screen and (min-width: 1025px) {
  .accent_ab {
    top: -10%;
  }
  .about_box {
    margin-top: 0%;
    margin-bottom: -8%;
  }
  .about_box .about_content {
    width: 80%;
    height: auto;
    padding: 5% 0 5% 0;
    border-radius: 1vw;
  }
  .about_title {
    font-size: 1.5vw;
    padding: 2% 2% 2% 5%;
  }
  .about_content p {
    padding: 2% 5% 2% 5%;
    font-size: 1vw;
    line-height: 1.2;
  }
  .about_img img {
    display: block;
    margin: 0 auto;
    width: 10vw;
    position: absolute;
    top: -4vw;
    right: 8vw;
  }
  .about_img2 img {
    display: block;
    margin: 0 auto;
    width: 5vw;
    position: absolute;
    top: 4vw;
    right: 7vw;
    z-index: 1;
  }
  /* .news_title{
    font-size: 1.5vw;
    padding: 5%;
  }
  .news-list .item .date{
    font-size: 1.5vw;
    min-width: 30%;
  }
  .news-list .item .title{
    width: 100%;
    font-size: 1.5vw;
  } */
}
/*---------------
  ご挨拶
---------------*/

.greeting_box {
  width: 100%;
  height: auto;
  background: #aa9393;
  margin: 30% auto;
}
.greeting_box .greeting_content0 {
  width: 90%;
  height: auto;
  /* background: #ffffff; */
  position: relative;
}
.greeting_content0 img {
  display: block;
  margin: 0 auto;
  width: 90%;
  position: absolute;
  /* height: auto; */
}
.greeting_title {
  font-size: 4.5vw;
  padding: 5% 5% 5% 10%;
  font-family: "KaiseiTokumin";
  letter-spacing: 0.2vw;
  position: relative;
}
/* .greeting_title::before{
  position: absolute;
  content: "greeting";
  font-family: 'krona one';
  color: #FFB174;
  font-size: 13vw;
  top: -100%;
  left: 0%;
  display: inline-block;
} */
.greeting_box .greeting_content1 {
  margin: 0 0 0 5%;
  width: 95%;
  height: auto;
  background: #ffffff;
  padding: 5% 0 5% 0;
  border-radius: 5vw 0 0 5vw;
}
.greeting_content1 p {
  color: #333333;
  font-size: 3.8vw;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.02081rem;
  padding: 0 10% 0 5%;
}
.greeting_box .greeting_content2 {
  width: 95%;
  height: auto;
  background: #ffffff;
  padding: 5% 0 5% 0;
  border-radius: 0 5vw 5vw 0;
  margin-top: 10%;
}
.greeting_content2 p {
  color: #333333;
  font-size: 3.8vw;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.02081rem;
  padding: 0 5% 0 10%;
}

/*---------------
  SNS
---------------*/
.sns_box {
  width: 100%;
  /* aspect-ratio: 16 / 28; */
}
.sns_box .sns_content {
  margin: 10% 0 0 5%;
  width: 80%;
  /* aspect-ratio: 16 / 32; */
  position: relative;
  margin: 15% 0 0 5%;
}
.twitter-timeline {
  aspect-ratio: 16 / 32;
  overflow: scroll;
}
.sns_title {
  font-size: 4.5vw;
  padding: 0% 0% 5% 1%;
  font-family: "KaiseiTokumin";
  letter-spacing: 0.2vw;
  position: relative;
}
@media screen and (min-width: 1025px) {
  .accent_sns {
    top: -4%;
    margin-left: -50%;
  }
  .sns_title {
    font-size: 1.5vw;
    margin-left: -47%;
    padding: 5% 0 5% 0;
    font-family: "KaiseiTokumin";
    letter-spacing: 0.2vw;
    position: relative;
  }
  .sns_box .sns_content {
    margin: 0 auto;
    width: 40%;
  }
}
/* .sns_title::before{
  position: absolute;
  content: "";
  top: -77%;
  left: 0%;
  display: inline-block;
  width: 25vw;
  height: 10vw;
  background: url(../03_img/sns.png) no-repeat;
  background-size: contain;
} */

/*---------------
  ごあんない
---------------*/
.info_box {
  margin-top: 20%;
  width: 100%;
  /* aspect-ratio: 16 / 28; */
}
.info_box .info_content {
  margin: 0 auto;
  width: 90%;
  /* aspect-ratio: 16 / 32; */
  position: relative;
}
.info_title {
  font-size: 4.5vw;
  padding: 12% 0 0 0;
  font-family: "KaiseiTokumin";
  letter-spacing: 0.2vw;
  position: relative;
}

.info_content1 {
  background: #ffffff;
  padding: 9% 7%;
  position: relative;
  border-radius: 3vw;
}
.info_content2 {
  margin: 6% 0 10% 0;
  background: #ffffff;
  padding: 7% 7%;
  border-radius: 3vw;
}
.info_content_title {
  font-size: 4vw;
  padding-bottom: 2%;
  line-height: 1.1;
  font-weight: 600;
}
.info_title_line {
  width: 100%;
  height: 0.4vw;
  margin: 6% auto;
  background-color: rgb(0, 0, 0);
}
.info_img_box {
  display: flex;
  margin: 0 auto;
  width: 100%;
}
.info_img_box1,
.info_img_box2 {
  flex-basis: 50%;
  flex-grow: 1;
}
.info_cobaco_img1 {
  display: block;
  width: 97.5%;
}
.info_cobaco_img2 {
  display: block;
  width: 101%;
  margin-left: -3%;
}
.info_img_box_text {
  font-size: 2.8vw;
  margin: 1% 0;
}
.info_text_box {
  margin: 11% 0;
}
.info_text_1 {
  font-size: 4vw;
  line-height: 1.1;
  margin: 3% 0;
}
.info_text_2 {
  font-size: 3.5vw;
  line-height: 1.2;
  margin-bottom: 5%;
}
.info_btn_box {
  position: absolute;
  width: 40%;
  aspect-ratio: 16 / 5;
  bottom: 3%;
  right: 5%;
  border-radius: 30vw;
  background: #396e07;
  display: flex;
  justify-content: center;
  align-items: center;
}
.info_btn {
  color: #fff;
  font-size: 4vw;
  line-height: 1.2vw;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 1vw;
}
.info_btn_box a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.info_festa_box {
  width: 90%;
  margin: 10% auto 0 auto;
}
.info_img_festa {
  margin-top: 5%;
}

.info_festa_img {
  display: block;
  width: 100%;
}
.pc_info_img_box {
  display: none;
}

@media screen and (min-width: 1025px) {
  .info_content_erea {
    width: 90%;
    margin: 0 auto 3% auto;
  }
  .accent_info {
    top: -2%;
    left: 5%;
  }
  .info_box {
    margin-top: 4%;
    width: 100%;
  }
  .info_box .info_content {
    margin: 0 auto;
    width: 90%;
    /* aspect-ratio: 16 / 32; */
    position: relative;
  }
  .info_title {
    font-size: 1.5vw;
    padding: 5% 0 2% 5%;
    font-family: "KaiseiTokumin";
    letter-spacing: 0.2vw;
    position: relative;
  }
  .info_content1 {
    background: #ffffff;
    padding: 0;
    position: relative;
    display: flex;
    margin-right: 5%;
    flex-basis: 70%;
    border-radius: 1vw;
  }
  .info_content2 {
    margin-left: 0;
    margin: 0;
    background: #ffffff;
    padding: 0;
    /* flex-basis: 30%; */
    padding: 3%;
    border-radius: 1vw;
  }
  .info_content_title {
    font-size: 0.9vw;
    padding-bottom: 2%;
    line-height: 1.1;
    font-weight: 700;
  }
  .info_title_line {
    width: 100%;
    height: 0.05vw;
    margin: 0 auto;
    background-color: rgb(0, 0, 0);
  }
  .info_img_box {
    display: none;
  }
  .pc_info_img_box {
    display: block;
    flex-basis: 20%;
    width: 100%;
    margin: 4% 0 3% 4%;
  }
  .info_img_festa {
    margin: 2% 7% 0% 7%;
  }
  .pc_info_content_right {
    flex-basis: 80%;
    margin: 4% 5% 2% 5%;
  }
  .pc_info_img_box1,
  .pc_info_img_box2 {
    width: 100%;
  }
  .pc_info_cobaco_img1 {
    display: block;
    width: 100%;
  }
  .pc_info_cobaco_img2 {
    display: block;
    width: 100%;
    margin-left: 0%;
  }
  .pc_info_img_box_text {
    width: 100%;
    font-size: 0.5vw;
    padding-top: 8%;
    font-weight: 600;
  }
  .info_img_box_text {
    display: none;
  }
  .info_text_box {
    margin: 5% 0 0 0;
  }
  .info_text_1 {
    font-size: 0.9vw;
    line-height: 1.1;
    margin: 0;
    font-weight: 500;
  }
  .info_text_2 {
    font-size: 0.9vw;
    line-height: 1.2;
    margin-top: 2%;
    margin-bottom: 2%;
    font-weight: 500;
  }
  .info_btn_box {
    position: absolute;
    width: 17%;
    aspect-ratio: 16 / 5;
    bottom: 7%;
    right: 4%;
    border-radius: 30vw;
    background: #396e07;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .info_btn {
    color: #fff;
    font-size: 0.8vw;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    letter-spacing: 0.4vw;
  }
  .info_btn_box a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .info_festa_box {
    display: flex;
    width: 100%;
    margin: 0 auto;
  }
  .info_festa_img {
    margin: 0 auto;
    display: block;
    width: 100%;
  }
  .festa_title {
    margin: 1%;
  }
}
/*---------------
  フッター
---------------*/
.footer_box {
  /* margin-top: 5%; */
  width: 100%;
  height: auto;
  background: #E7AFB0;
  padding: 7%;
}
.footer_text1 {
  font-size: 4vw;
  font-family: "KaiseiTokumin";
  position: relative;
  padding-bottom: 5%;
}
.footer_text1::after {
  position: absolute;
  content: "";
  display: inline-block;
  top: -35%;
  left: 55%;
  width: 10vw;
  height: 10vw;
  background: url(../03_img/logo.png) no-repeat;
  background-size: contain;
}
.footer_logo_img_box {
  width: 2vw;
  height: 2vw;
  margin: 0 auto;
}
.footer_logo_img_box img {
  display: block;
  width: 100%;
}
.footer_text2 {
  font-size: 3.2vw;
  color: #333333;
  padding-bottom: 3%;
  line-height: 5.5vw;
}
.footer_text2 span {
  font-size: 3vw;
  font-family: "KaiseiTokumin";
  /* background: #ccce7c; */
  background: #ffffff;
  font-weight: 500;
  padding: 0.3% 0.1%;
  margin-right: 2%;
}
.footer_text3 {
  font-size: 3.2vw;
  color: #333333;
  padding-bottom: 10%;
  line-height: 5vw;
}
.footer_text3 span {
  font-size: 3vw;
  font-family: "KaiseiTokumin";
  background: #ffffff;
  font-weight: 500;
  padding: 0.1%;
  margin-right: 2%;
}
.copy {
  font-size: 2.7vw;
  display: block;
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .footer_flex_box {
    display: flex;
    align-items: flex-end;
  }
  .footer_left_box {
    flex-basis: 55%;
  }
  .footer_right_box {
    flex-basis: 45%;
  }
  .footer_box {
    /* margin-top: 5%; */
    width: 100%;
    height: auto;
    /* background: #e3e3e3; */
    /* background: #fbda91; */
    background: #E7AFB0;
    padding: 3% 10%;
  }
  .footer_text1 {
    font-size: 1.5vw;
    font-family: "KaiseiTokumin";
    position: relative;
    padding-bottom: 5%;
  }
  .footer_text1::after {
    position: absolute;
    content: "";
    display: inline-block;
    width: 100%;
    top: -21%;
    left: 55%;
    height: 3vw;
    background: url(../03_img/logo.png) no-repeat;
    background-size: contain;
  }
  .footer_logo_img_box {
    width: 1vw;
    height: 1vw;
    margin: 0 auto;
  }
  .footer_logo_img_box img {
    display: block;
    width: 100%;
  }
  .footer_text2 {
    font-size: 0.8vw;
    color: #333333;
    font-weight: 600;
    padding-bottom: 3%;
    line-height: 1.4vw;
  }
  .footer_text2 span,
  .footer_text3 span {
    font-size: 0.8vw;
    font-family: "KaiseiTokumin";
    background: #ffffff;
    padding: 0.2% 0.5%;
    margin-right: 2%;
    font-weight: 600;
    letter-spacing: 0.3vw;
    padding-left: 1%;
  }
  .footer_text3 {
    font-size: 0.8vw;
    font-weight: 600;
    color: #333333;
    padding-bottom: 3%;
    line-height: 1.3vw;
  }
  .copy {
    font-size: 0.8vw;
    display: block;
    text-align: center;
    padding-top: 2%;
  }
}

/*-- lineupCSS --*/

/*---------------
　トップ画像
---------------*/
.lineup_img_box {
  width: 100%;
  aspect-ratio: 16 / 10;
  background: #c4ddd1;
  overflow: hidden;
}
.lineup_img_box img {
  display: block;
  margin: 0 auto;
  width: 100%;
}
.barimg_concept {
  background-image: url(../03_img/10_スパイラルチャリオッツ.jpg);
  background-size: 100%;
  background-position: 50% 10%;
  background-repeat: no-repeat;
}
ul#slide {
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
}
ul#slide li {
  position: absolute;
  margin: 0;
  padding: 0;
  top: 0;
  left: 0;
  list-style: none;
}

/* #imgName, #prev, #next{
  opacity: 0;
} */

.lineuplist_box {
  width: 100%;
  text-align: center;
}

/*---------------
　一覧ボタン
---------------*/
.lineuplist_btn {
  width: 80%;
  aspect-ratio: 16 / 2;
  margin: 3% auto;
  background: #565656;
  border-radius: 5vw;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.lineuplist_btntext {
  color: #fff;
  font-size: 4vw;
  font-style: normal;
  line-height: normal;
}
.fo_lineuplist_btn {
  width: 80%;
  aspect-ratio: 16 / 2.2;
  margin: 5% auto;
  background: #565656;
  border-radius: 5vw;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.fo_lineuplist_btntext {
  color: #fff;
  font-size: 4vw;
  font-style: normal;
  line-height: normal;
}
.JS_Click_ShowModal_Trigger {
  position: absolute;
  display: inline-block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*---------------
　創作プログラムボタン
---------------*/
.stfprogram1_btn_box {
  width: 100%;
  text-align: center;
  margin-top: 3%;
}
.stfprogram1_btn_box .stfprogram1_btn {
  width: 80%;
  aspect-ratio: 16 / 2;
  margin: 5% auto 0 auto;
  background: #424a38;
  border-radius: 5vw;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.stfprogram1_btn_box .stfprogram1_btn a {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
}
.stfprogram1_btn .stfprogram1_btntext {
  color: #fff;
  font-size: 4vw;
  font-style: normal;
  line-height: normal;
}
/*---------------
　ラインナップ
---------------*/
.lineup_box {
  width: 100%;
  height: auto;
  margin-top: 20%;
}

.lu_title {
  text-align: center;
  font-family: "kaiseiTokumin";
  font-size: 6.5vw;
  letter-spacing: 0.4vw;
  line-height: 7vw;
  position: relative;
}
.nowplay_box {
  height: auto;
  background: #eee7cf;
  padding: 5% 0 5% 2%;
  margin-top: 7%;
}
.nowplay_title {
  position: relative;
  display: block;
  font-size: 4vw;
  padding: 10px 0px 10px 20px;
  padding-bottom: 5%;
}
.nowplay_title::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 1.7vw;
  height: 8vw;
  display: inline-block;
  background-color: #e38989;
}

/* .lu_title::before{
  position: absolute;
  content: "lineup";
  font-family: 'krona one';
  color: #FFB174;
  font-size: 10vw;
  top: -77%;
  left: 8%;
  display: inline-block;
} */

.lineup_box .lineup_content {
  margin: 16% auto;
  width: 90%;
  /* height: 328px; */
  aspect-ratio: 16 / 15;
  background: #ffffff;
  position: relative;
  border-radius: 5px;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.25);
}

.lineup_erea1 {
  position: absolute;
  top: -7%;
  left: 2%;
  width: 100%;
}
.lineup_erea1_img1 {
  width: 95%;
}
/* .lineupday_img{
  display: block;
  margin: 0 ;
  width: 93%;
  border-bottom: solid 1px #000000;
} */
.lineup_erea2 {
  width: 100%;
  height: auto;
}
.lineup_3 {
  width: 100%;
  height: auto;
  padding: 0 4%;
}
/*---------------
　団体名、タイトル文字サイズも調整
---------------*/
.lineup_name {
  font-size: 4.5vw;
  font-weight: 600;
  padding-top: 13%;
  padding-left: 13%;
}
.lineup_name_2 {
  font-size: 3.8vw;
  font-weight: 600;
  padding-top: 12%;
}
.font3vw {
  font-size: 3vw;
  display: inline-block;
}

.font2_8vw {
  font-size: 2.8vw;
  padding-top: 1%;
  line-height: 1.2;
  display: inline-block;
}
.right {
  text-align: right;
}
.lineup_title {
  margin: 2% auto 4% auto;
  font-size: 4.5vw;
  font-weight: 600;
  padding-left: 11%;
}
.lineup_title2 {
  margin: 2% auto 4% auto;
  font-size: 4vw;
  font-weight: 600;
  padding-left: 2%;
}
.lineup_title_sub {
  margin: 2% auto 4% auto;
  font-weight: 600;
  /* padding-left: 5%; */
  font-size: 3.5vw;
}
.lineup_title_sub2{
  margin: 4% auto 4% auto;
  font-weight: 600;
  /* padding-left: 5%; */
  font-size: 3.8vw;
}
.pad_5 {
  padding-left: 5%;
}
.pad_10 {
  padding-left: 10%;
}
.pad_13 {
  padding-left: 13%;
}
.lineup_title_font3vw {
  /* margin: 1% auto 4% auto; */
  font-size: 2.8vw;
  font-weight: 600;
}
.lineup_title_2 {
  margin: 1% auto 4% auto;
}
.lineup_4 {
  width: 94%;
  aspect-ratio: 16 / 6;
  overflow: hidden;
  background: #8b7610;
  margin: 0 auto;
  position: relative;
}
.lineuparea_img {
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.lineuparea_img1 {
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0%;
}
.lineuparea_img2 {
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 40%;
}
.lineuparea_img3 {
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 60%;
}
/* #theater_img .ekimae_img {
  position: absolute;
  object-fit: cover;
  object-position: 50% 40%;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.8;
} */
.lineup_5 {
  margin: 5% auto 1% auto;
}
.lineup_comment {
  font-size: 3.5vw;
  letter-spacing: 0.2vw;
  line-height: 1.2;
  padding: 0 5% 3% 5%;
}
.lineup_6 {
  display: flex;
  padding: 0 5% 3% 5%;
}
.pad_btm {
  padding-bottom: 7%;
}
.barrierfree_icon {
  width: 10%;
  margin-left: 2%;
}
.barrierfree_icon:first-child {
  margin-left: 0%;
}
.lineup_7 {
  position: absolute;
  width: 40%;
  aspect-ratio: 16 / 4;
  bottom: -5%;
  right: 3%;
  border-radius: 1vw;
  display: flex;
  justify-content: center;
  align-items: center;
  filter: drop-shadow(0px 1px 0px rgba(0, 0, 0, 0.25));
}
.lineup_7.sp_bm7{
  bottom: -7%;
}
.lineup_7_btn {
  color: #fff;
  font-size: 3.5vw;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: 0.3vw;
}
.lineup_7 a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.honda_col {
  background-color: var(--honda-color);
}
.suzunari_col {
  background-color: var(--suzunari-color);
}
.ekimae_col {
  background-color: var(--ekimae-color);
}
.offoff_col {
  background-color: var(--offoff-color);
}
.gekisho_col {
  background-color: var(--gekisho-color);
}
.rakuen_col {
  background-color: var(--rakuen-color);
}
.theater711_col {
  background-color: var(--theater711-color);
}
.b1_col {
  background-color: var(--b1-color);
}
.novyi_col {
  background-color: var(--novyi-color);
}
.townhall_col {
  background-color: var(--townhall-color);
}
.barrier-free_spbox {
  width: 90%;
  margin: 0 auto;
  margin-bottom: 20%;
}
.barrier-free_spbox img {
  width: 100%;
}
.barrier-free_pcbox {
  display: none;
}
.width50 {
  width: 50%;
}
.width80 {
  width: 100%;
}
.lu_title_box {
  padding: 5% 0 2% 0;
  position: relative;
  /* display: flex;
  flex-direction: column; */
}
.accent_lu {
  left: 4%;
  top: -26%;
  display: none;
}

@media screen and (min-width: 1025px) {
  .lu_title_box {
    padding: 5% 0;
    position: relative;
  }
  .accent_lu {
    left: 4%;
    top: 33%;
    display: block;
  }


  /*---------------
　一覧ボタン
---------------*/
  .lineuplist_box .lineuplist_btn {
    width: 30%;
    aspect-ratio: 16 / 1.5;
    margin: 3% auto;
    background: #565656;
    border-radius: 3vw;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .lineuplist_btn .lineuplist_btntext {
    color: #fff;
    font-size: 1vw;
    font-style: normal;
    line-height: normal;
  }
  /*---------------
　創作プログラムボタン
---------------*/
  .stfprogram1_btn_box {
    flex-basis: 50%;
    width: 100%;
    text-align: center;
  }
  .stfprogram1_btn_box .stfprogram1_btn {
    width: 33%;
    margin: 5% auto 0 auto;
  }
  .stfprogram1_btn .stfprogram1_btntext {
    color: #fff;
    font-size: 1vw;
    font-style: normal;
    line-height: normal;
  }
  .lineup_img_box {
    width: 80%;
    margin: 0 auto;
    aspect-ratio: 16 / 6;
    background: #c4ddd1;
    overflow: hidden;
  }
  .lineup_img_box img {
    display: block;
    margin: 0 auto;
    width: 100%;
  }
  .lineup_box {
    width: 95%;
    margin: 0 auto;
    height: auto;
    margin-top: 3%;
    display: flex;
    flex-wrap: wrap;
  }
  .lu_title {
    position: absolute;
    font-size: 2vw;
    top: 63%;
    left: 6%;
    font-family: "KaiseiTokumin";
    letter-spacing: 0.4vw;
  }

  .lineup_box .lineup_content {
    margin: 5% auto;
    width: 30%;
    aspect-ratio: 16 / 17;
  }
  .lineup_erea1 {
    position: absolute;
    top: -5.5%;
    width: 100%;
  }
  .ma_left {
    margin-left: 1.5%;
  }
  .ma_small {
    margin: 1% 0 3% 1%;
  }

  /*---------------
  　団体名、タイトル文字サイズも調整
  ---------------*/
  .lineup_name {
    font-size: 1vw;
    font-weight: 600;
    padding-top: 16%;
  }
  .lineup_name_2 {
    font-size: 1vw;
    font-weight: 600;
    padding-top: 12%;
  }
  .font3vw {
    font-size: 0.9vw;
    display: inline-block;
  }

  .font2_8vw {
    font-size: 0.65vw;
    padding-top: 1%;
    line-height: 1.2;
    padding-left: 8%;
    display: inline-block;
  }
  .font2_8vwpad0 {
    font-size: 0.65vw;
    padding-top: 1%;
    line-height: 1.2;
    padding-left: 0%;
    display: inline-block;
  }
  .right {
    text-align: right;
  }
  .lineup_title {
    margin: 4% auto 4% auto;
    font-size: 1vw;
    font-weight: 600;
  }
  .lineup_title2 {
    margin: 4% auto 4% auto;
    font-size: 1vw;
    font-weight: 600;
    padding-left: 2%;
  }
  .lineup_title_sub {
    margin: 4% auto 4% auto;
    font-weight: 600;
    /* padding-left: 5%; */
    font-size: 0.8vw;
  }
  .lineup_title_sub2{
    margin: 4% auto 4% auto;
    font-weight: 600;
    padding-left: 3%;
    font-size: 0.9vw;
  }

  .pad_5 {
    padding-left: 10%;
  }
  .lineup_title_font3vw {
    /* margin: 1% auto 4% auto; */
    font-size: 0.8vw;
    font-weight: 600;
  }
  .lineup_title span {
    font-size: 0.9vw;
  }
  .lineup_title_2 {
    font-size: 1vw;
    font-weight: 600;
    margin-top: 2%;
  }
  .lineup_title_2 .font2_8vw {
    font-size: 0.65vw;
  }
  .lineup_title_font4_5vw {
    margin: 1% auto 4% auto;
    font-size: 1vw;
    font-weight: 600;
  }
  /* .lineup_title_font4_5vw{
    margin: 4% auto 4% auto;
    font-size: 1vw;
    font-weight: 600;
  } */
  .lineup_3 {
    aspect-ratio: 16 / 5.5;
  }
  .lineup_4 {
    width: 94%;
    aspect-ratio: 16 / 6;
    overflow: hidden;
    background: #8b7610;
    margin: 0 auto;
    position: relative;
  }
  /* .lineup_4 img{
    position: absolute;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
  
  } */
  .lineup_5 {
    margin: 5% auto 4% auto;
  }
  .lineup_comment {
    font-size: 0.9vw;
    letter-spacing: 0.1vw;
    line-height: 1.3;
    padding: 0 5% 2% 5%;
  }
  .lineup_6 {
    display: flex;
    padding: 0 5% 3% 5%;
  }
  .pad_btm {
    padding-bottom: 7%;
  }
  .barrierfree_icon {
    width: 10%;
    margin-left: 2%;
  }
  .lineup_7 {
    position: absolute;
    width: 40%;
    aspect-ratio: 16 / 4;
    bottom: -5%;
    right: 3%;
    border-radius: 0.3vw;
    display: flex;
    justify-content: center;
    align-items: center;
    filter: drop-shadow(0px 1px 0px rgba(0, 0, 0, 0.25));
  }
  .lineup_7.sp_bm7{
  bottom: -5%;
  }
  .lineup_7_btn {
    color: #fff;
    font-size: 0.8vw;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    letter-spacing: 0.2vw;
  }
  .lineup_7 a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .lineuplist_box {
    display: none;
  }
  .barrier-free_spbox {
    display: none;
  }
  .barrier-free_pcbox {
    display: block;
    width: 100%;
  }
  .barrier-free_pcbox img {
    width: 97%;
    display: block;
    margin: 0 auto;
    padding: 5% 0;
  }

  /*-- detailsCSS --*/

  /*-- contactCSS --*/
  /*---------------

---------------*/
  .cn_title {
    text-align: center;
  }

  .Form {
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
    max-width: 720px;
  }
  .Form-Item {
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 14px;
    padding-right: 14px;
    width: 100%;
    align-items: center;
  }
  .Form-Item-Label {
    width: 100%;
    max-width: 248px;
    letter-spacing: 0.05em;
    font-weight: bold;
    font-size: 18px;
  }
}
  @media screen and (min-width: 700px) {
    .Form {
      margin-top: 80px;
    }
    .Form-Item {
      padding-left: 14px;
      padding-right: 14px;
      padding-top: 24px;
      padding-bottom: 24px;
      display: flex;
    }
  }
  .Form-Item-Label.isMsg {
    margin-top: 8px;
    margin-bottom: auto;
  }
  @media screen and (max-width: 480px) {
    .Form-Item-Label {
      max-width: inherit;
      display: flex;
      align-items: center;
      font-size: 15px;
    }
  }
  @media screen and (max-width: 480px) {
    .Form-Item-Label.isMsg {
      margin-top: 0;
    }
  }
  .Form-Item-Label-Required {
    border-radius: 6px;
    margin-right: 8px;
    padding-top: 8px;
    padding-bottom: 8px;
    width: 48px;
    display: inline-block;
    text-align: center;
    background: #140f1a;
    color: #fff;
    font-size: 14px;
  }
  @media screen and (max-width: 480px) {
    .Form-Item-Label-Required {
      border-radius: 4px;
      padding-top: 4px;
      padding-bottom: 4px;
      width: 32px;
      font-size: 10px;
    }
  }
  .Form-Item-Input {
    border: 1px solid #ddd;
    border-radius: 6px;
    margin-left: 40px;
    padding-left: 1em;
    padding-right: 1em;
    height: 48px;
    flex: 1;
    width: 100%;
    max-width: 410px;
    background: #eaedf2;
    font-size: 18px;
  }
  @media screen and (max-width: 480px) {
    .Form-Item-Input {
      margin-left: 0;
      margin-top: 18px;
      height: 40px;
      flex: inherit;
      font-size: 15px;
    }
  }
  .Form-Item-Textarea {
    border: 1px solid #ddd;
    border-radius: 6px;
    margin-left: 40px;
    padding-left: 1em;
    padding-right: 1em;
    height: 216px;
    flex: 1;
    width: 100%;
    max-width: 410px;
    background: #eaedf2;
    font-size: 18px;
  }
  @media screen and (max-width: 480px) {
    .Form-Item-Textarea {
      margin-top: 18px;
      margin-left: 0;
      height: 200px;
      flex: inherit;
      font-size: 15px;
    }
  }
  .Form-Btn {
    border-radius: 6px;
    margin-top: 32px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
    padding-bottom: 20px;
    width: 280px;
    display: block;
    letter-spacing: 0.05em;
    background: #5bc8ac;
    color: #fff;
    font-weight: bold;
    font-size: 20px;
  }
  @media screen and (max-width: 480px) {
    .Form-Btn {
      margin-top: 24px;
      padding-top: 8px;
      padding-bottom: 8px;
      width: 160px;
      font-size: 16px;
    }
  }

  /*-- accessCSS --*/
  .map_title_box {
    position: relative;
  }
  .map_title {
    text-align: center;
    font-family: "kaiseiTokumin";
    font-size: 6.5vw;
    letter-spacing: 1vw;
    line-height: 7vw;
  }
  .de_title {
    text-align: center;
    font-family: "kaiseiTokumin";
    font-size: 5.5vw;
    letter-spacing: 0.4vw;
    line-height: 6vw;
  }
  /*---------------
　劇場マップ画像
---------------*/
  .map_img_box {
    width: 100%;
    height: auto;
    margin: 10% auto;
    position: relative;
    z-index: 1;
  }

  .map_img_box > p {
    width: 100%;
    aspect-ratio: 16 / 10.5;
  }
  .map_img_box > p img {
    height: 100%;
  }
  @media screen and (min-width: 1025px) {
    .map_img_box {
      width: 70%;
      margin: 2% auto;
    }
    .map_title,
    .de_title {
      text-align: center;
      font-family: "kaiseiTokumin";
      font-size: 1.5vw;
      letter-spacing: 0.4vw;
      line-height: 2vw;
    }
  }
  /* 以下はタブレット以下のサイズ用
@media screen and (min-width:0px) and (max-width: 1023px){
  .map_img_box > p{ 
    width: 100%;
    aspect-ratio: 16 / 10.5;
  }
  .map_img_box > p img{
    height:100%;
  }
} */

  /* .map_img_box img{
  display: block;
  margin: 0 auto;
  width: 90%;
} */
  /*---------------
　劇場情報
---------------*/
  .ac_theaterlist_box1 {
    width: 100%;
    height: auto;
    margin-top: 13%;
  }
  .ac_theaterlist_box2 {
    width: 100%;
    height: auto;
  }
  .ac_theater_box {
    margin: 0 auto;
    width: 90%;
    height: auto;
  }
  .ac_theater_ber {
    margin: 5% auto 0 auto;
    width: 100%;
    height: auto;
    text-align: center;
    padding: 1% 0;
  }
  .honda_col {
    background-color: var(--honda-color);
  }
  .suzunari_col {
    background-color: var(--suzunari-color);
  }
  .ekimae_col {
    background-color: var(--ekimae-color);
  }
  .offoff_col {
    background-color: var(--offoff-color);
  }
  .gekisho_col {
    background-color: var(--gekisho-color);
  }
  .rakuen_col {
    background-color: var(--rakuen-color);
  }
  .theater711_col {
    background-color: var(--theater711-color);
  }
  .b1_col {
    background-color: var(--b1-color);
  }
  .novyi_col {
    background-color: var(--novyi-color);
  }
  .townhall_col {
    background-color: var(--townhall-color);
  }
  .ac_theater_name {
    color: #fff;
    font-size: 3.6vw;
  }
  .ac_theater_infobox {
    width: 100%;
    height: auto;
    display: flex;
    margin: 1.5% auto;
  }
  .ac_theater_info_ad {
    width: 100%;
    height: auto;
    flex-basis: 55%;
    padding-left: 3%;
  }
  .ac_theater_info_ad span {
    color: #000;
    font-size: 3.8vw;
  }
  .ac_theater_info_tel {
    width: 100%;
    height: auto;
    flex-basis: 45%;
    padding-left: 12%;
  }
  .ac_theater_info_tel span {
    color: #000;
    font-size: 3.8vw;
    position: relative;
  }
  .ac_theater_info_tel span::before {
    position: absolute;
    content: "";

    display: inline-block;
    top: -10%;
    left: -20%;
    width: 5.5vw;
    height: 5.5vw;
    background: url(../03_img/tel.png) no-repeat;
    background-size: contain;
  }

  /*---------------
　バリアフリー情報
---------------*/
  .acd-check {
    display: none;
  }
  .acd-label {
    margin-top: 5%;
    display: block;
    margin-left: 59%;
    /* background: #0068b7; */
    color: #000000;
    width: 36vw;
    padding-bottom: 1%;
    font-size: 3.8vw;
    margin-bottom: 1px;
    position: relative;
    border-bottom: solid 0.3vw #000;
  }
  .acd-label2 {
    margin-top: -1%;
    display: block;
    margin-left: 59%;
    /* background: #0068b7; */
    color: #000000;
    width: 36vw;
    padding-bottom: 1%;
    font-size: 3.8vw;
    margin-bottom: 1px;
    position: relative;
    border-bottom: solid 0.3vw #000;
  }
  .acd-label:after {
    /* background: #00479d; */
    box-sizing: border-box;
    content: "+";
    color: #000;
    display: block;
    font-family: "Font Awesome 5 Free";
    height: auto;
    position: absolute;
    right: 0%;
    top: -7%;
  }
  .acd-label2:after {
    /* background: #00479d; */
    box-sizing: border-box;
    content: "+";
    color: #000;
    display: block;
    font-family: "Font Awesome 5 Free";
    height: auto;
    position: absolute;
    right: 0%;
    top: -7%;
  }
  .acd-content {
    /* border: 1px solid #333; */
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: 0.5s;
    visibility: hidden;
  }
  .acd-check:checked + .acd-label:after {
    content: "ー";
  }
  .acd-check:checked + .acd-label + .acd-content {
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
  }
  .acd-check:checked + .acd-label2:after {
    content: "ー";
  }
  .acd-check:checked + .acd-label2 + .acd-content {
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
  }
  .ad_table {
    width: 100%;
    border-collapse: collapse;
    background: #ffffff;
  }
  .ad_table_th {
    width: 33%;
    vertical-align: middle;
  }
  .ad_table th,
  .ad_table td {
    border: 2px solid #eee;
    padding: 4px 8px;
  }
  .ad_table_td_icon {
    display: flex;
    flex-wrap: wrap;
  }
  .ad_table th {
    font-size: 3.5vw;
    font-weight: 400;
  }
  .ad_table_td_icon img {
    display: block;
    width: 9vw;
    height: 9vw;
    margin: 1%;
  }
  .ad_table_box div {
    padding: 4%;
    font-size: 3.5vw;
  }
  .ad_table_title {
    font-size: 3.5vw;
    font-weight: 700;
    padding-bottom: 2%;
  }
  /*---------------
　下北沢へのアクセス
---------------*/
  .ac_route_box {
    width: 100%;
    height: auto;
    margin: 20% auto;
  }
  .ac_train_box {
    margin: 0 auto;
    width: 88%;
    height: auto;
    margin: 10% auto;
  }
  .ac_img_box img {
    display: block;
    margin: 0 auto;
    width: 100%;
  }
  .ac_bus_box {
    margin: 0 auto;
    width: 88%;
    height: auto;
    margin: 10% auto;
  }
  .ac_car_box {
    margin: 0 auto;
    width: 88%;
    height: auto;
    margin: 10% auto;
  }
  .ac_route_title_txt p {
    font-size: 3.5vw;
    margin: 4% auto;
    font-weight: 700;
  }
  .ac_route_txt p {
    font-size: 3.5vw;
    line-height: 1.5;
    margin-top: 3%;
  }

  @media screen and (min-width: 1025px) {
    .map_title {
      text-align: left;
      margin-left: 10%;
      font-size: 1.2vw;
      margin-top: 3%;
    }
    .map_img_box {
      /* display: none; */
    }
    .ac_theaterlist_box {
      width: 70%;
      margin: 0 auto;
      display: flex;
      height: auto;
      margin-top: 5%;
    }
    .ac_theaterlist_box1 {
      width: 100%;
      margin: 0 auto;
      height: auto;
      margin-top: 5%;
      margin-right: 5%;
    }
    .ac_theaterlist_box2 {
      width: 100%;
      margin: 0 auto;
      height: auto;
      margin-top: 5%;
    }
    .ac_theater_box {
      width: 98%;
    }
    .ac_theater_ber {
      margin: 5% auto 0 auto;
      width: 100%;
      height: auto;
      text-align: center;
      padding: 1.5% 0;
    }
    .ac_theater_name {
      color: #fff;
      font-size: 1vw;
    }
    .ac_theater_infobox {
      width: 100%;
      height: auto;
      display: flex;
      margin: 1.8% auto;
    }
    .ac_theater_info_ad {
      width: 100%;
      height: auto;
      flex-basis: 55%;
      padding-left: 3%;
    }
    .ac_theater_info_ad span {
      color: #000;
      font-size: 1.1vw;
    }
    .ac_theater_info_tel {
      width: 100%;
      height: auto;
      flex-basis: 45%;
      padding-left: 12%;
    }
    .ac_theater_info_tel span {
      color: #000;
      font-size: 1.1vw;
      position: relative;
    }
    .ac_theater_info_tel span::before {
      position: absolute;
      content: "";
      display: inline-block;
      top: -6%;
      left: -17%;
      width: 1.5vw;
      height: 1.5vw;
      background: url(../03_img/tel.png) no-repeat;
      background-size: contain;
    }

    /*---------------
　    バリアフリー情報
    ---------------*/
    .acd-label {
      margin-top: 3%;
      margin-left: 60%;
      width: 10vw;
      padding-bottom: 1%;
      font-size: 1vw;
      margin-bottom: 0.5%;
      position: relative;
      border-bottom: solid 0.1vw #000;
    }
    .acd-label:after {
      /* background: #00479d; */
      box-sizing: border-box;
      content: "+";
      color: #000;
      display: block;
      height: auto;
      position: absolute;
      right: 0%;
      top: -7%;
    }
    .acd-label2 {
      margin-top: -0.9vw;
      margin-left: 60%;
      width: 10vw;
      padding-bottom: 1%;
      font-size: 1vw;
      margin-bottom: 0.5%;
      position: relative;
      border-bottom: solid 0.1vw #000;
    }
    .acd-label2:after {
      /* background: #00479d; */
      box-sizing: border-box;
      content: "+";
      color: #000;
      display: block;
      height: auto;
      position: absolute;
      right: 0%;
      top: -7%;
    }
    .acd-content {
      /* border: 1px solid #333; */
      display: block;
      height: 0;
      opacity: 0;
      padding: 0 10px;
      transition: 0.5s;
      visibility: hidden;
    }
    .acd-check:checked + .acd-label:after {
      content: "ー";
    }
    .acd-check:checked + .acd-label + .acd-content {
      height: auto;
      opacity: 1;
      padding: 10px;
      visibility: visible;
    }
    .acd-check:checked + .acd-label2:after {
      content: "ー";
    }
    .acd-check:checked + .acd-label2 + .acd-content {
      height: auto;
      opacity: 1;
      padding: 10px;
      visibility: visible;
    }
    .ad_table {
      width: 100%;
      border-collapse: collapse;
      background: #ffffff;
    }
    .ad_table_th {
      width: 33%;
      vertical-align: middle;
    }
    .ad_table th,
    .ad_table td {
      border: 2px solid #eee;
      padding: 4px 8px;
    }
    .ad_table th {
      font-size: 1.1vw;
      font-weight: 400;
    }
    .ad_table_td_icon img {
      display: block;
      width: 2.5vw;
      height: 2.5vw;
      margin: 1%;
    }
    .ad_table_box div {
      padding: 4%;
      font-size: 0.9vw;
    }
    .ad_table_title {
      font-size: 0.9vw;
      font-weight: 700;
      padding-bottom: 1%;
    }

    /*---------------
　下北沢へのアクセス
---------------*/
    .ac_route_box {
      width: 100%;
      height: auto;
      margin: 10% auto;
    }
    .ac_train_box {
      margin: 0 auto;
      width: 50%;
      height: auto;
      margin: 2% auto;
    }
    .ac_img_box img {
      display: block;
      margin: 0 auto;
      width: 100%;
    }
    .ac_bus_box {
      margin: 0 auto;
      width: 50%;
      height: auto;
      margin: 5% auto;
    }
    .ac_car_box {
      margin: 0 auto;
      width: 50%;
      height: auto;
      margin: 5% auto;
    }
    .ac_route_title_txt p {
      font-size: 1vw;
    }
    .ac_route_txt p {
      font-size: 1vw;
      line-height: 1.6;
      margin-top: 2%;
    }
  }

  /*-- stfprogramCSS --*/

  .program_img_box {
    width: 100%;
    height: auto;
    background: #6a2828;
  }
  .program_img_box img {
    margin: 0 auto;
    width: 100%;
    display: block;
  }

  .program_about_box {
    margin: 35% auto 10% auto;
    width: 90%;
    height: auto;
    background: #ffffff;
    border-radius: 8vw;
  }
  .program_about_content {
    position: relative;
    margin: 0 auto;
    padding: 16% 0 10% 0;
    width: 90%;
    height: auto;
  }
  .accent_stfpro {
    left: -6%;
    top: -17%;
    line-height: 10vw;
  }
  .program_about_title {
    /* position: relative; */
    font-family: "KaiseiTokumin";
    font-size: 5vw;
    padding: 1% 0 10% 0;
  }
  /* .program_about_title::before{
  position: absolute;
  text-align: left;
  content: "stf\Aprogram";
  white-space: pre;
  font-family: 'krona one';
  color: #FFB174;
  font-size: 15vw;
  top: -255%;
  left: -7%;
  display: block;
  line-height: 12vw;
} */
  .program_about_text {
    font-size: 3.5vw;
    padding-bottom: 6%;
    line-height: 6vw;
  }
  .stfprogram_btn_box {
    width: 100%;
    text-align: center;
  }
  .stfprogram_btn_box .stfprogram_btn {
    width: 90%;
    aspect-ratio: 16 / 3;
    margin: 6% auto 0% auto;
    background: #b84242;
    border-radius: 25vw;
    display: flex;
    justify-content: center;
    align-items: center;
    filter: drop-shadow(0px 6px 0px rgba(0, 0, 0, 0.25));
  }
  .stfprogram_btn_box2 {
    width: 100%;
    text-align: center;
  }
  .stfprogram_btn_box2 .stfprogram_bottom_btna {
    width: 90%;
    aspect-ratio: 16 / 3;
    margin: 10% auto 0% auto;
    background: #c95e3c;
    /* background: #a69c99; */
    border-radius: 25vw;
    display: flex;
    justify-content: center;
    align-items: center;
    filter: drop-shadow(0px 6px 0px rgba(0, 0, 0, 0.25));
    position: relative;
  }
  .stfprogram_btn_box2 .stfprogram_bottom_btnb {
    width: 90%;
    aspect-ratio: 16 / 3;
    margin: 10% auto 0% auto;
    background: #466194;
    /* background: #a69c99; */
    border-radius: 25vw;
    display: flex;
    justify-content: center;
    align-items: center;
    filter: drop-shadow(0px 6px 0px rgba(0, 0, 0, 0.25));
    position: relative;
  }
  .stfprogram_bottom_btna a {
    position: absolute;
    width: 100%;
    height: 100%;
  }
  .stfprogram_bottom_btnb a {
    position: absolute;
    width: 100%;
    height: 100%;
  }
  .stfprogram_btn .stfprogram_btntext {
    color: #fff;
    font-size: 4vw;
    display: block;
  }
  .stfprogram_btn a {
    position: absolute;
    width: 100%;
    height: 100%;
  }
  .stfprogram_bottom_btna,
  .stfprogram_bottom_btnb .stfprogram_btntext {
    color: #fff;
    font-size: 4vw;
    display: block;
  }
  .stfprogram_btn_undertext {
    text-align: center;
    padding-top: 3%;
    font-size: 3.5vw;
  }
  .program_content_title {
    font-size: 5vw;
    text-align: center;
    padding-bottom: 10%;
  }
  .program_content_title span {
    font-size: 5vw;
    color: #fbc226;
  }
  .program_content_box {
    width: 100%;
    height: auto;
  }
  .program_content {
    margin: 0 auto;
    width: 88%;
    height: auto;
    background: #ffffff;
    position: relative;
    border-top: 1vw solid #c8bfa9;
  }
  .program_a {
    margin: 0 auto;
    width: 85%;
    height: auto;
    padding-top: 3%;
    padding-bottom: 15%;
  }
  .program_day {
    width: 95%;
  }
  .program_day img {
    width: 100%;
  }
  .program_a_title2 {
    margin: 1% auto 5%;
    font-size: 4vw;
  }
  .stf_program_title {
    font-size: 6vw;
    font-family: "KaiseiTokumin";
    margin: 0% auto 9% auto;
  }
  .stf_program_title_b {
    font-size: 4.5vw;
    line-height: 7vw;
    font-family: "KaiseiTokumin";
    margin: 0% auto 9% auto;
  }
  .stf_program_directr {
    font-size: 4vw;
    margin: 4% 0;
    line-height: 6vw;
  }
  .stf_program_directr span {
    font-size: 3.8vw;
  }
  .program_ab_img_box {
    width: 100%;
    height: auto;
  }
  .program_ab_img_box img {
    margin: 0 auto;
    width: 100%;
    display: block;
  }
  .program_ab_comment {
    font-size: 3.8vw;
    margin: 6% auto;
    background: #ffffff;
    border: 1vw solid #c8bfa9;
    border-radius: 3vw;
  }
  .program_ab_comment_ti {
    padding: 8% 4% 4% 4%;
  }
  .program_ab_comment_text {
    font-size: 3.5vw;
    line-height: 5vw;
    padding: 4% 4% 8% 4%;
  }
  .program_ab_app_title {
    font-size: 4vw;
    font-weight: 600;
    display: block;
    position: relative;
    margin: 12% 0 7% 0;
    padding-left: 7%;
  }
  .program_ab_app_title::before {
    content: "";
    position: absolute;
    top: -53%;
    left: 0%;
    width: 2vw;
    height: 8vw;
    background: #f2c683;
  }
  .program_ab_app {
    font-size: 4vw;
    line-height: 6vw;
    margin-left: 3%;
  }
  .program_ab_app2 {
    font-size: 4vw;
    line-height: 6vw;
    font-weight: 600;
    margin-top: 3%;
    margin-left: 3%;
    color: #fc3e3e;
  }
  span.ten {
    display: inline-block;
    margin-left: 8%;
  }
  .program_ab_dayimg_box {
    width: 100%;
    height: auto;
  }
  .program_ab_dayimg_box img {
    /* margin: 0 auto; */
    width: 100%;
    display: block;
  }
  .program_ab_stff {
    margin-left: 3%;
    line-height: 5.5vw;
  }

  .pc_program_content {
    display: none;
  }
  .program_content2_box {
    background: #faf4f4;
    margin-bottom: 20%;
    border-bottom: 1vw solid #c8bfa9;
  }
  .program_content2 {
    margin: 0 auto;
    width: 88%;
    height: auto;
    padding-top: 5%;
    padding-bottom: 10%;
    font-size: 4vw;
  }
  .program_map_img_box {
    width: 100%;
    aspect-ratio: 16 / 8;
    margin: 7% auto;
    background: #ffffff;
  }
  .program_map_img {
    display: block;
    width: 99%;
    padding: 4% 2% 0% 3%;
  }
  .stf_program_content_line {
    width: 90%;
    margin: 0 auto;
    border-bottom: 1vw solid #c8bfa9;
  }
  .accent_map {
    display: none;
  }

  @media screen and (min-width: 1025px) {
    .program_content {
      display: none;
    }
    .pc_program_content {
      display: block;
    }
    .program_img_box {
      width: 100%;
      background: #6a2828;
    }
    .program_img_box img {
      margin: 0 auto;
      width: 40%;
      display: block;
    }
    .program_about_box {
      margin: 8% auto 5% auto;
      width: 80%;
      height: auto;
      background: #ffffff;
      border-radius: 2vw;
    }
    .program_about_content {
      margin: 0 auto;
      padding: 6% 0 4% 0;
      height: auto;
    }
    .accent_stfpro {
      top: -25%;
    }
    .accent_map {
      display: block;
      left: 10%;
      top: -230%;
    }
    .program_about_title {
      position: relative;
      font-size: 1.5vw;
      text-align: left;
      padding-bottom: 2%;
    }
    .program_about_title::before {
      white-space: nowrap;
      font-size: var(--accent_fs);
      top: -282%;
      left: -6%;
    }
    .program_about_text {
      font-size: 1vw;
      line-height: 1.5vw;
      padding-bottom: 2%;
    }
    .stfprogram_aboutflex {
      display: flex;
      margin-top: 2%;
    }
    .stfprogram_btn_box {
      width: 100%;
      text-align: center;
      display: inline-block;
      flex-basis: 40%;
    }
    .stfprogram_btn_box .stfprogram_btn {
      width: 100%;
      margin: 0% auto;
      aspect-ratio: 16 / 3;
      background: #b84242;
      border-radius: 25vw;
      filter: drop-shadow(0px 6px 0px rgba(0, 0, 0, 0.25));
      position: relative;
    }
    .stfprogram_btn a {
      position: absolute;
      width: 100%;
      height: 100%;
    }
    .stfprogram_bottom_btna a,
    .stfprogram_bottom_btnb a {
      position: absolute;
      width: 100%;
      height: 100%;
    }
    .stfprogram_btn_box2 .stfprogram_bottom_btna {
      margin: 5% auto;
      width: 45%;
      aspect-ratio: 16 / 3;
      background: #c95e3c;
      /* background: #a69c99; */
      border-radius: 25vw;
      filter: drop-shadow(0px 6px 0px rgba(0, 0, 0, 0.25));
      position: relative;
    }
    .stfprogram_btn_box2 .stfprogram_bottom_btnb {
      margin: 5% auto;
      width: 45%;
      aspect-ratio: 16 / 3;
      background: #466194;
      /* background: #a69c99; */
      border-radius: 25vw;
      filter: drop-shadow(0px 6px 0px rgba(0, 0, 0, 0.25));
      position: relative;
    }

    .stfprogram_btn .stfprogram_btntext,
    .stfprogram_bottom_btna,
    .stfprogram_bottom_btnb .stfprogram_btntext {
      color: #fff;
      font-size: 1vw;
      letter-spacing: 0.1vw;
      line-height: 1.3vw;
      display: block;
    }
    .stfprogram_btn_undertext {
      text-align: right;
      padding-right: 6%;
      font-size: 1.5vw;
      flex-basis: 60%;
    }
    /*----------
   プログラム
   ----------*/
    .program_day {
      width: 40%;
    }
    .program_content_title {
      font-size: 1.7vw;
      letter-spacing: 0.4vw;
      font-family: "KaiseiTokumin";
      padding-bottom: 5%;
    }
    .program_content_title span {
      font-size: 1.7vw;
      letter-spacing: 0.4vw;
      font-family: "KaiseiTokumin";
      padding-bottom: 5%;
    }
    .program_content_box {
      width: 100%;
      height: auto;
    }
    .pc_program_content {
      margin: 0 auto;
      width: 80%;
      height: auto;
      background: #ffffff;
      position: relative;
      border-top: 0.3vw solid #c8bfa9;
    }
    .pc_program_title_box {
      display: flex;
      align-items: flex-end;
    }
    .pc_program_title_box_b {
      display: flex;
      align-items: flex-end;
      margin-top: -8%;
    }
    .pc_program_a {
      margin: 0 auto;
      width: 90%;
      height: auto;
      padding-top: 3%;
      padding-bottom: 1%;
    }
    .pc_program_a_title {
      font-family: "krona one";
      font-size: 4vw;
      color: #e17b7b;
    }
    .pc_program_b_title {
      font-family: "krona one";
      font-size: 4vw;
      color: #466194;
    }
    .pc_lineup_2 {
      width: 100%;
      height: auto;
      flex-basis: 50%;
      display: flex;
      align-items: flex-end;
      margin-left: 5%;
    }

    .pc_program_a_title2_box {
      display: flex;
      align-items: center;
      margin: 3% auto;
    }
    .pc_program_a_title2 {
      font-size: 1.2vw;
    }
    .pc_stf_program_title {
      font-size: 2.5vw;
      font-family: "KaiseiTokumin";
      padding-left: 1%;
    }
    .pc_stf_program_directr {
      font-size: 1vw;
      font-weight: 600;
      margin-bottom: -0.5%;
      padding-left: 2%;
      line-height: 1.3;
    }
    .pc_program_a_title2_box_b {
      display: flex;
      align-items: center;
      margin: 3% auto;
    }
    .pc_program_a_title2_b {
      font-size: 1.2vw;
    }
    .pc_stf_program_title_b {
      font-size: 1.95vw;
      font-family: "KaiseiTokumin";
      padding-left: 0;
    }
    .pc_stf_program_directr_b {
      font-size: 1vw;
      font-weight: 600;
      margin-bottom: -0.5%;
      padding-left: 2%;
      line-height: 1.4;
    }
    .pc_program_img_com_box {
      display: flex;
      margin-top: 5%;
    }
    .pc_program_ab_img_box {
      width: 100%;
      height: auto;
      flex-basis: 65%;
    }
    .pc_program_ab_img_box img {
      width: 100%;
      display: block;
    }
    .pc_program_ab_comment_box {
      background-color: #ffffff;
      margin-left: 3%;
      font-size: 1vw;
      flex-basis: 32%;
      padding: 3%;
      border: 0.3vw solid #c8bfa9;
      border-radius: 1vw;
    }
    .pc_program_ab_comment_ti {
      margin-bottom: 4%;
      font-size: 1.1vw;
      line-height: 1.7vw;
      font-weight: 700;
      padding-bottom: 5%;
    }
    .pc_program_ab_comment_text {
      font-size: 1vw;
      line-height: 1.3;
    }
    .pc_program_ab_app_title {
      font-size: 1.5vw;
      display: block;
      position: relative;
      margin: 4% 0 3% 0;
      padding-left: 4%;
    }
    .pc_program_ab_app_title::before {
      content: "";
      position: absolute;
      /* display: inline-block; */
      top: -40%;
      left: 0%;
      width: 0.7vw;
      height: 2.5vw;
      background: #f2c683;
    }
    .pc_program_ab_app {
      font-size: 1.2vw;
      line-height: 2;
      margin-left: 3%;
    }
    .program_ab_app2 {
      font-size: 1.2vw;
      line-height: 2;
      font-weight: 600;
      margin-top: 3%;
      margin-left: 3%;
      color: #fc3e3e;
    }
    .pc_program_sc_box {
      display: flex;
      margin-bottom: 5%;
    }
    .pc_program_ab_sc_title {
      font-size: 1.5vw;
      display: block;
      position: relative;
      margin: 5% 0 3% 0;
      padding: 0 4%;
      flex-basis: 30%;
    }
    .pc_program_ab_sc_title::before {
      content: "";
      position: absolute;
      /* display: inline-block; */
      top: -20%;
      left: 0%;
      width: 0.7vw;
      height: 2.5vw;
      background: #f2c683;
    }
    .pc_program_ab_dayimg_box {
      width: 100%;
      height: auto;
      margin-top: 4%;
      margin-left: -6%;
      flex-basis: 61%;
    }
    .pc_program_ab_dayimg_box img {
      /* margin: 0 auto; */
      width: 60%;
      display: block;
    }
    .pc_stf_program_content_line {
      width: 90%;
      margin: 0 auto;
      border-bottom: 0.3vw solid #c8bfa9;
    }
    .pc_program_content2_box {
      background: #faf4f4;
      margin-bottom: 10%;
      border-bottom: 0.3vw solid #c8bfa9;
    }
    .pc_program_content2 {
      margin: 0 auto;
      width: 90%;
      height: auto;
      padding-top: 2%;
      padding-bottom: 5%;
    }
    .pc_program_ab_stff {
      line-height: 1.5;
      font-size: 1vw;
      margin-left: 3%;
    }
    .pc_program_ab_stff p {
      padding-bottom: 1%;
    }
    .pc_program_ab_ad_title {
      font-size: 1.2vw;
      font-weight: 700;
      padding-bottom: 5%;
    }
    .pc_program_ab_ad {
      font-size: 1vw;
      line-height: 1.3;
    }
    .pc_program_map_box {
      display: flex;
      justify-content: center;
      align-items: flex-start;
    }
    .pc_program_map_left {
      padding: 2% 5% 0 0;
      flex-basis: 40%;
      margin-left: 3%;
    }
    .pc_program_map_img_box {
      width: 100%;
      aspect-ratio: 16 / 8;
      margin: 0 auto;
      background: #ffffff;
      flex-basis: 60%;
    }
    .pc_program_map_img {
      display: block;
      width: 100%;
      padding: 3% 3% 0 3%;
    }
    .pc_program_ab_app {
      font-size: 1vw;
    }
  }

  /*-- detailsCSS --*/
  .Pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    list-style: none;
    margin: 3% auto 7% auto;
  }
  .Pagination-Item-Link {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 8vw;
    height: 9vw;
    background: #d9d9d9;
    font-size: 3vw;
    color: #111;
    font-weight: bold;
    transition: all 0.15s linear;
    text-decoration: none;
  }
  .Pagination-Item-Link-Icon {
    width: 20px;
  }
  .Pagination-Item-Link.isActive {
    background: #111;
    color: #fff;
    pointer-events: none;
  }
  .Pagination-Item-Link:not(.isActive):hover {
    background: #111;
    color: #fff;
  }
  .Pagination > * + * {
    margin-left: 12px;
  }
  .de_content_box {
    margin: 10% auto 0 auto;
    width: 100%;
    padding-bottom: 4%;
    margin-bottom: -6%;
  }

  .de_content_ereabox {
    margin: 0 auto;
    width: 90%;
    height: auto;
    padding: 8% 4% 10% 4%;
    background: #ffffff;
    border-radius: 0vw 0vw 2vw 2vw;
    box-shadow: 6.418px 6.418px 2.567px 0px rgba(0, 0, 0, 0.25);
    font-size: 3.7vw;
    line-height: 1.2;
  }
  .de_content_ereabox p {
    margin-bottom: 2vw;
  }
  .de_content_ereabox div {
    font-size: 3.7vw;
  }

  @media screen and (min-width: 1025px) {
    .de_content_ereabox {
      font-size: 0.9vw;
    }
    .de_content_ereabox p {
      margin-bottom: 1vw;
    }
    .de_content_ereabox div {
      font-size: 0.9vw;
    }
  }

  .page_box {
    margin: 10% auto 1% auto;
    text-align: center;
  }
  .page_title {
    font-size: 3.5vw;
  }
  .lu_day_icon_right {
    width: 0;
    height: 0;
    border-top: solid 1.5vw transparent;
    border-bottom: solid 1.5vw transparent;
    border-right: solid 2.4vw #333333;
    margin: 2% 2% 4% 3%;
  }
  .de_content_link_btnbox {
    display: flex;
  }
  .de_content_link_btn {
    width: 40%;
    aspect-ratio: 16 / 4;
    bottom: -5%;
    right: 0%;
    border-radius: 30vw;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f2f2f2;
    border: solid 0.4vw #929292;
    text-align: center;
    position: relative;
  }
  .de_content_link_btn a {
    position: absolute;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: #000000;
    font-size: 3.5vw;
    line-height: 7.5vw;
    font-weight: 600;
  }

  .de_content_titlebox {
    bottom: -5%;
    right: 3%;
    margin: 2% 0 1% 0;
  }
  .de_content_title_s {
    color: #000000;
    font-size: 3.3vw;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
  }
  .de_content_text {
    font-size: 3.5vw;
  }
  .de_content_flyerbox {
    width: 100%;
    height: 180px;
    background: #9b97e5;
  }
  .table-wrap {
    overflow-x: scroll;
    margin-top: 10%;
    margin-bottom: 10%;
    margin-left: 2%;
  }
  .table {
    width: 100%;
    border-collapse: collapse;
    white-space: nowrap;
    background: #ffffff;
  }
  .table th,
  .table td {
    border: 2px solid #eee;
    padding: 4px 8px;
  }

  /* 大見出し対応 */
  h3.accent {
    position: relative;
    display: block;
    margin-top: 4%;
    margin-bottom: 4%;
    font-size: 4vw;
    padding: 10px 0px 10px 20px;
  }
  h3.accent::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 1.7vw;
    height: 8vw;
    display: inline-block;
    background-color: #e38989;
  }
  h4 {
    font-size: 4.5vw;
  }
  h3.accent_none {
    display: block;
    font-size: 4.5vw;
    padding: 2.5vw 0 2.5vw 0;
  }
  .longurl {
    font-size: 3.7vw;
    line-height: 1.2;
  }
  /*-----------------------------
 URL折り返し対応
-----------------------------*/
  .longurl {
    word-break: break-all;
  }

  .lineup_view_box {
    font-size: 0;
    text-align: center;
  }

  .lineup_view_box > * {
    width: 46%;
    margin-left: 2%;
    display: inline-block;
    margin: 3% 1%;
  }
  /* フライヤー対応 */
  .lineup_view_box > *:nth-child(2n + 1) {
    margin-left: 0;
  }
  .lineup_view_box .lineup_view img {
    max-width: 100%;
  }
  #lineup_head {
    width: 90%;
    margin: 0 auto;
    height: 8vw;
    box-shadow: calc(0.3rem * 0.67) calc(0.3rem * 0.67) calc(0.3rem * 0.67)
      #00000029;
    border-radius: 1vw 1vw 0vw 0vw;
    line-height: 8vw;
    padding: 0 3vw;
  }
  #lineup_head h2 {
    color: #fff;
    font-size: 3.3vw;
    font-weight: 600;
  }
  @media screen and (min-width: 1025px) {
    h4 {
      font-size: 1.5vw;
    }
    /* 大見出し対応 */
    h3.accent {
      position: relative;
      display: block;
      margin-top: 4%;
      margin-bottom: 4%;
      font-size: 16px;
      padding: 10px 0px 10px 20px;
    }
    h3.accent::before {
      position: absolute;
      content: "";
      top: 0;
      left: 0;
      width: 8px;
      height: 44px;
      display: inline-block;
      background-color: #e38989;
    }
    h3.accent_none {
      display: block;
      font-size: 1.5vw;
      padding: 1.5vw 0 1.5vw 0;
    }
    .longurl {
      font-size: 0.9vw;
      line-height: 1.2vw;
    }

    .lineup_view_box {
      font-size: 0;
      text-align: center;
    }

    .lineup_view_box > * {
      width: 48%;
      margin-left: 2%;
      display: inline-block;
      margin: 3% 1%;
    }
    /* フライヤー対応 */
    .lineup_view_box > *:nth-child(2n + 1) {
      margin-left: 0;
    }
    .lineup_view_box .lineup_view img {
      max-width: 100%;
      max-height: 30vw;
    }
    #lineup_head {
      width: 90%;
      margin: 0 auto;
      height: 3vw;
      box-shadow: calc(0.3rem * 0.67) calc(0.3rem * 0.67) calc(0.3rem * 0.67)
        #00000029;
      border-radius: 1vw 1vw 0vw 0vw;
      line-height: 3vw;
      padding: 0 3vw;
    }
    #lineup_head h2 {
      color: #fff;
      font-size: 1.2vw;
      font-weight: 600;
    }
  }
  /*-----------------------------
お知らせ一覧（ページネーション）
------------------------------*/
  /* ナビの配置 */
  #info_nav {
    margin: 20px auto 0 auto;
    text-align: center;
  }
  #info_nav li {
    display: inline-block;
    margin: 0 1% 0 1%;
    font-size: 14px;
  }

  .pagination {
    display: flex;
    justify-content: center;
    margin: 1vw 0 2vw 0;
  }
  .pagination a {
    text-decoration: none;
  }
  .page_feed,
  .page_number {
    width: 30px;
    margin: 0 10px;
    padding: 5px 10px;
    text-align: center;
    background: #b8b8b8;
    color: black;
  }
  .first_last_page,
  .now_page_number {
    width: 30px;
    margin: 0 10px;
    padding: 5px 10px;
    text-align: center;
    background: #f0f0f0;
    color: black;
  }
  a.page_number:visited {
    color: black;
    text-decoration: none;
  }

  /* ナビの配置 */
  #backpage {
    margin: 20px auto 0 auto;
    text-align: center;
  }
  #backpage p a {
    text-decoration: none;
  }

  @media screen and (min-width: 1025px) {
    .Pagination {
      display: flex;
      justify-content: center;
      align-items: center;
      list-style: none;
      margin: 1% auto 7% auto;
    }
    .Pagination-Item-Link {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      width: 2vw;
      height: 3vw;
      background: #d9d9d9;
      font-size: 1vw;
      color: #111;
      font-weight: bold;
      transition: all 0.15s linear;
      text-decoration: none;
    }
    .Pagination-Item-Link-Icon {
      width: 20px;
    }
    .Pagination-Item-Link.isActive {
      background: #111;
      color: #fff;
      pointer-events: none;
    }
    .Pagination-Item-Link:not(.isActive):hover {
      background: #111;
      color: #fff;
    }
    .Pagination > * + * {
      margin-left: 12px;
    }
    .de_content_box {
      margin: 0 auto;
      width: 89%;
      background-size: 2% 6%;
      /* background-image: linear-gradient(to right, #ffc917 6px, transparent 6px); */
      background-repeat: repeat-x;
      background-position: left bottom;
      padding-bottom: 0%;
    }

    .program_content2 {
      margin: 0 auto 20% auto;
      width: 80%;
      height: auto;
      background: #ffffff;
    }
    .de_content_ereabox {
      margin: 0 auto;
      width: 90%;
      height: auto;
      padding: 4% 4%;
      border-radius: 0vw 0vw 2vw 2vw;
      box-shadow: 6.418px 6.418px 2.567px 0px rgba(0, 0, 0, 0.25);
    }
    .page_box {
      margin: 6% auto 1% auto;
      text-align: center;
    }
    .page_title {
      font-size: 1vw;
    }
    .lu_day_icon_right {
      width: 0;
      height: 0;
      border-top: solid 0.5vw transparent;
      border-bottom: solid 0.5vw transparent;
      border-right: solid 0.8vw #333333;
      margin: 2% 2% 4% 3%;
    }
    .de_content_link_btnbox {
      display: flex;
    }
    .de_content_link_btn {
      width: 16%;
      aspect-ratio: 16 / 4;
      bottom: -5%;
      right: 0%;
      border-radius: 30vw;
      display: flex;
      justify-content: center;
      align-items: center;
      background: #f2f2f2;
      border: solid 0.05vw #929292;
      text-align: center;
    }
    .de_content_link_btn a {
      position: absolute;
      width: 100%;
      height: 100%;
      text-decoration: none;
      color: #000000;
      font-size: 1vw;
      line-height: 2vw;
    }

    .de_content_titlebox {
      width: 16%;
      bottom: -5%;
      right: 3%;
      margin: 1% 0 1% 0;
    }
    .de_content_title_s {
      color: #000000;
      font-size: 1vw;
      font-style: normal;
      font-weight: 600;
      line-height: normal;
    }
    .de_content_text {
      font-size: 1.5vw;
    }
    .de_content_flyerbox {
      width: 100%;
      height: 300px;
      background: #e5bf97;
    }
    .table-wrap {
      overflow-x: scroll;
      margin-top: 10%;
      margin-bottom: 10%;
      margin-left: 2%;
    }
    .table {
      width: 80%;
      border-collapse: collapse;
      white-space: nowrap;
      background: #ffffff;
    }
    .table th,
    .table td {
      border: 2px solid #eee;
      padding: 4px 8px;
    }
  }

  .img_link_p {
    position: relative;
  }
  .img_link {
    position: absolute;
    display: inline-block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  /* カードデザイン */
  .card-item {
    margin: 0 1%;
    min-width: 41vw;
    max-width: 41vw;
    height: auto;
    white-space: normal;
    background-color: #f4f4f4;
    border-radius: 2vw;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    position: relative;
  }
  .card-item a {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
  }
  .card-item .pic {
    overflow: hidden;
    width: 100%;
    height: 20vw;
    position: relative;
  }

  .card-item .pic img {
    aspect-ratio: 1.618 / 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .pic_day {
    background: #f1e2ea;
    height: 5vw;
    position: absolute;
    /* top: 0; */
    bottom: 0;
    padding: 0 7% 0 5%;
  }

  .card-item p {
    color: #000;
    padding-top: 1%;
    line-height: 1.6;
    font-size: 3vw;
    text-align: left;
    font-weight: 700;
  }

  .lu_nowplay_list_btnbox {
    width: 57%;
    aspect-ratio: 16 / 2.8;
    border-radius: 3vw;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 2%;
    margin-left: 7%;
    margin-bottom: 5%;
  }
  .lu_nowplay_list_btn {
    color: #fff;
    font-size: 2.7vw;
  }

  /* カード型横スクロール */
  .card-wrap {
    overflow-x: auto;
    margin: 0 auto;
    width: 100%;
    position: relative;
    -webkit-overflow-scrolling: touch;
  }
  .card-wrap-in {
    white-space: nowrap;
    margin: 0 auto;
    list-style: none;
    display: flex;
  }
  .shortcut {
    width: 40vw; /* 要素の横幅を指定 */
    white-space: nowrap; /* 横幅のMAXに達しても改行しない */
    overflow: hidden; /* ハミ出した部分を隠す */
    text-overflow: ellipsis; /* 「…」と省略 */
    -webkit-text-overflow: ellipsis; /* Safari */
    -o-text-overflow: ellipsis; /* Opera */
  }
  .ca_day {
    padding-left: 2%;
  }
  .ca_campany {
    padding-left: 5%;
  }
  .ca_title {
    padding-left: 2%;
  }
  @media screen and (min-width: 1025px) {
    /* カードデザイン */
    .nowplay_box {
      height: auto;
      padding: 2% 0 2% 2%;
      margin-top: 6%;
    }
    .nowplay_title {
      position: relative;
      display: block;
      font-size: 1.2vw;
      padding: 1.5% 0 2% 2%;
    }
    .nowplay_title::before {
      position: absolute;
      content: "";
      top: 0;
      left: 0;
      width: 0.6vw;
      height: 3.5vw;
      display: inline-block;
      background-color: #e38989;
    }
    .card-item {
      margin: 0 1.5% 0 0%;
      min-width: 14vw;
      max-width: 14vw;
      height: auto;
      white-space: normal;
      background-color: #f4f4f4;
      border-radius: 1vw;
      overflow: hidden;
      display: flex;
      flex-direction: column;
      position: relative;
    }
    .card-item .pic {
      overflow: hidden;
      width: 100%;
      height: 12vw;
      position: relative;
    }

    .card-item .pic img {
      aspect-ratio: 1.618 / 1;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .pic_day {
      background: #f1e2ea;
      height: 1.8vw;
      position: absolute;
      /* top: 0; */
      bottom: 0;
      padding: 2% 7% 0 5%;
    }

    .card-item p {
      color: #000;
      padding-top: 2%;
      line-height: 1.4;
      font-size: 0.8vw;
      text-align: left;
      font-weight: 700;
    }
    .lu_nowplay_list_btnbox {
      width: 57%;
      aspect-ratio: 16 / 2.6;
      border-radius: 3vw;
      text-align: center;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 2%;
      margin-left: 7%;
    }
    .lu_nowplay_list_btn {
      color: #fff;
      font-size: 0.8vw;
    }

    /* カード型横スクロール */
    .card-wrap {
      overflow-x: auto;
      margin: 0 auto;
      width: 100%;
      position: relative;
      -webkit-overflow-scrolling: touch;
    }
    .card-wrap-in {
      white-space: nowrap;
      margin: 0 auto;
      list-style: none;
      display: flex;
    }
    .shortcut {
      width: 14vw; /* 要素の横幅を指定 */
      white-space: nowrap; /* 横幅のMAXに達しても改行しない */
      overflow: hidden; /* ハミ出した部分を隠す */
      text-overflow: ellipsis; /* 「…」と省略 */
      -webkit-text-overflow: ellipsis; /* Safari */
      -o-text-overflow: ellipsis; /* Opera */
    }
  }

  .marquee {
    padding: 3vw 0;
    overflow: hidden;
    border: 0.2vw #ccc solid;
    border-radius: 5px;
    background-color: #eee;
    font-size: 5vw;
    font-family: "KaiseiTokumin";
    margin-top: 6%;
  }

  .marquee-text {
    display: inline-block;
    padding-left: 100%;
    white-space: nowrap;
    animation: marquee 12s linear infinite;
  }

  @keyframes marquee {
    0% {
      transform: translate(0);
    }
    100% {
      transform: translate(-100%);
    }
  }
  @media screen and (min-width: 1025px) {
    .marquee {
      display: none;
    }
  }

  .swiper {
    width: 600px;
    height: 300px;
    background-color: #fff;
  }

  /*---------------
  ■■archive
---------------*/
  .archive-box {
    width: 100%;
  }
  .archive-box .archive-box-content {
    margin: 6% 0 0 5%;
    width: 80%;
    /* aspect-ratio: 16 / 32; */
    position: relative;
  }
  .archive-title-sub {
    font-size: 2vw;
    padding: 7% 0% 5% 6%;
    font-family: "KaiseiTokumin";
    letter-spacing: 0.2vw;
    position: relative;
  }
  .accent-archive {
    top: -5%;
    left: 6%;
  }
  .archive-content-box {
    width: 100%;
    /* background: #dbd5c9; */
    background-color: #ec6d4e;
    padding-bottom: 20px;
  }
  .archive-content-box2 {
    width: 100%;
    /* background: #fcd486; */
    background-color: #ebe6e8;
    padding-bottom: 60px;
  }
  .archive-year {
    font-size: 7vw;
    padding: 10px;
    color: #909090;
  }
  .archive-color {
    color: #ebe6e8;
  }
  .archive-content {
    width: 80%;
    height: 500px;
    background: #ffffff;
    margin: 0 auto;
    height: 100%;
    padding: 40px 0;
    margin-bottom: 60px;
  }
  .archive-content-inner {
    width: 90%;
    margin: 0 auto;
    background: #ffffff;
  }
  .archive-content-title {
    background: #5c5c5c;
    width: 100%;
    margin: 0 auto;
    padding: 10px;
  }
  .archive-content-title-text {
    font-size: 1.5vw;
    text-align: center;
    font-weight: 600;
    color: #fff;
  }
  .archive-content-flex {
    display: flex;
    margin-top: 40px;
  }
  .archive-flyer-box {
    flex-basis: 45%;
  }
  .archive-flyer-box img {
    width: 80%;
  }
  .archive-textbox {
    background-color: #ffffff;
    flex-basis: 65%;
  }
  .archive-textbox-inner {
    width: 80%;
  }
  .archive-text {
    padding-left: 20px;
    font-size: 1vw;
    font-weight: 600;
    color: #333333;
  }
  .archive-text1 {
  }
  .archive-text-line {
    border: #979797 0.8px solid;
    margin: 6px 0;
  }
  .archive-text2 {
    padding-bottom: 20px;
  }
  .archive-text-linehight15 {
    line-height: 1.5;
  }
  .archive-title-linehight {
    line-height: 1;
  }
  .archive-img-flex {
    background-color: #ffffff;
    height: 100%;
    display: flex;
    justify-content: space-between;
  }
  .archive-img-box {
    flex-basis: 32%;
  }
  .archive-img-box img {
    width: 100%;
    padding: 20px 0;
  }
  .archive-sp-br {
    display: none;
  }
  @media screen and (max-width: 1024px) {
    .archive-box .archive-box-content {
      margin: 2% 0 0 5%;
      width: 80%;
      /* aspect-ratio: 16 / 32; */
      position: relative;
    }
    .archive-title-sub {
      font-size: 4.5vw;
      padding: 30% 0% 5% 3%;
      font-family: "KaiseiTokumin";
      letter-spacing: 0.2vw;
      position: relative;
    }
    .accent-archive {
      top: 22%;
      left: 2%;
    }
    .archive-year {
      font-size: 10vw;
      padding: 10px;
    }
    .archive-content-title-text {
      font-size: 2.5vw;
      text-align: center;
      font-weight: 600;
      color: #fff;
    }
    .archive-content-flex {
      display: flex;
      margin-top: 40px;
    }
    .archive-flyer-box {
      flex-basis: 45%;
    }
    .archive-flyer-box img {
      width: 95%;
    }
    .archive-textbox {
      background-color: #ffffff;
      flex-basis: 65%;
    }
    .archive-textbox-inner {
      width: 100%;
    }
    .archive-text {
      padding-left: 20px;
      font-size: 2vw;
      font-weight: 600;
      color: #333333;
    }
    .archive-text1 {
    }
    .archive-text-line {
      border: #333333 0.8px solid;
      margin: 6px 0;
    }
    .archive-text2 {
      padding-bottom: 20px;
    }
    .archive-text-linehight15 {
      line-height: 1.5;
    }
    .archive-title-linehight {
      line-height: 1.2;
    }
    .archive-img-flex {
      background-color: #ffffff;
      height: 100%;
      display: flex;
      justify-content: space-between;
    }
    .archive-img-box {
      flex-basis: 32%;
    }
    .archive-img-box img {
      width: 100%;
      padding: 20px 0;
    }
    .archive-sp-br {
      display: block;
    }
    .archive-pc-br {
      display: none;
    }
  }
  @media screen and (max-width: 700px) {
    .archive-box .archive-box-content {
      margin: 6% 0 0 5%;
      width: 80%;
      /* aspect-ratio: 16 / 32; */
      position: relative;
    }
    .archive-title-sub {
      font-size: 6vw;
      padding: 30% 0% 5% 3%;
      font-family: "KaiseiTokumin";
      letter-spacing: 0.2vw;
      position: relative;
    }
    .accent-archive {
      top: 22%;
      left: 2%;
    }
    .archive-content-box {
      width: 100%;

      padding-bottom: 20px;
    }
    .archive-content-box2 {
      width: 100%;
      padding-bottom: 20px;
    }
    .archive-year {
      font-size: 13vw;
      padding: 10px;
    }
    .archive-content {
      width: 90%;
      height: 500px;
      background: #ffffff;
      margin: 0 auto;
      height: 100%;
      padding: 20px 0 10px 0;
      margin-bottom: 60px;
    }
    .archive-content-inner {
      width: 90%;
      margin: 0 auto;
      background: #ffffff;
    }
    .archive-content-title {
      width: 100%;
      margin: 0 auto;
      padding: 8px;
    }
    .archive-content-title-text {
      font-size: 4vw;
      text-align: center;
      font-weight: 600;
      color: #fff;
    }
    .archive-content-flex {
      display: block;
      margin-top: 40px;
    }
    .archive-flyer-box {
      text-align: center;
    }
    .archive-flyer-box img {
      width: 80%;
    }
    .archive-textbox {
      background-color: #ffffff;
      flex-basis: 65%;
      margin: 0 auto;
    }
    .archive-textbox-inner {
      width: 90%;
      margin: 40px auto 0 auto;
    }
    .archive-text {
      padding-left: 0px;
      font-size: 3.5vw;
      font-weight: 600;
    }
    .archive-text-line {
      border: #979797 0.8px solid;
      margin: 6px 0;
    }
    .archive-text2 {
      padding-bottom: 20px;
    }
    .archive-text-linehight15 {
      line-height: 1.5;
    }
    .archive-img-flex {
      background-color: #ffffff;
      height: 100%;
      display: block;
      justify-content: space-between;
    }
    .archive-img-box {
      flex-basis: 30%;
    }
    .archive-img-box img {
      width: 100%;
      padding: 20px 0;
    }
    .archive-sp-br {
      display: block;
    }
    .archive-pc-br {
      display: none;
    }
  }

.menu_archive_box {
  margin: 10% 0% 0% 5%;
}
.menu_archive {
  margin: 0% 0% 4% 7%;
  font-size: 3.8vw;
}
.me_archive {
  width: 87%;
  height: 13vw;
  background-color: #f6ede6;
  margin: 0% 0% 0% 7%;
  padding: 5% 0% 0% 20px;
  font-size: 3.8vw;
  position: relative;
}
.me_archive a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.coution {
  font-size: 3.8vw;
  color: red;
  line-height: 1.5;
}
.center {
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .coution {
    font-size: 1.4vw;
    margin-top:4%;
  }
  .me_archive {
    /* height: 4vw;
    padding: 8% 0% 0% 11%; */
    height: 3vw;
    padding: 4.5% 0% 0% 11%;
    font-size: 0.9vw;
  }
  .menu_archive {
    font-size: 1.0vw;
  }
}
.x_box{
  height: 10vh;
  width: 10vw;
  background-color: #fff;
}
.x_box {
  margin-top: 20%;
  width: 100%;
  /* aspect-ratio: 16 / 28; */
}
.x_box .info_content {
  margin: 0 auto;
  width: 90%;
  /* aspect-ratio: 16 / 32; */
  position: relative;
}
.X_title {
  font-size: 4.5vw;
  padding: 12% 0 0 0;
  font-family: "KaiseiTokumin";
  letter-spacing: 0.2vw;
  position: relative;
}

.X_content1 {
  background: #ffffff;
  padding: 9% 7%;
  position: relative;
  border-radius: 3vw;
}