@charset "utf-8";

/*=================================================================================================================================*/
/** 個別指定 for スマートフォン
/*=================================================================================================================================*/

/*---------------------------------------------
 ** 850px
---------------------------------------------*/
@media screen and (max-width: 850px) {

  /*---------------------------------------------
	body
---------------------------------------------*/

  .copyright01 {
    display: block;
    text-align: right;
    padding-bottom: 4%;
    font-size: 7px;
    margin-top: -5%;
  }

  html {
    scroll-behavior: smooth;
  }

  body {
    font-size: 15px;
    line-height: 1.8;
  }

  .hover:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: 'alpha( opacity=100 )';
  }

  .only_pc {
    display: none !important;
  }

  .only_pc_inline {
    display: none;
  }

  .only_pc_line {
    display: none;
  }

  .only_sp {
    display: block !important;
  }

  .only_sp_inline {
    display: inline-block;
  }

  .sp_br {
    display: inline;
  }

  .pc_br {
    display: none;
  }

  /*画像*/
  img {
    max-width: 100%;
    height: auto;
  }


  header nav ul li {
    width: 100% !important;
    max-width: 150px;
    margin: 0 auto 3%;
    display: block;
  }




  header nav ul li img {
    mix-blend-mode: multiply;
    display: block;
  }

  header nav ul li:first-child img {
    max-width: 120px;
    margin: 0 auto;
  }

  header nav ul li:nth-of-type(3) {
    max-width: 170px;
  }

  header nav ul li:nth-of-type(8) a {
    width: 310px;
    margin-left: -100px;
    padding: 5px 20px;
    border: 1px solid #a68948;
    border-radius: 20px;
    background: #fff;
  }

  header nav ul li:nth-of-type(8) a {
    margin-top: 30px;
  }


  header nav ul li:last-child {
    width: 100% !important;
    max-width: 300px;
    text-align: center;
  }

  header nav ul li:last-child a {
    color: #fff;
    display: block;
    margin: 2% auto;
  }




  #header nav ul {
    width: 90%;
    max-width: 480px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    padding-top: 90px;
  }

  #header nav ul li {
    width: 47% !important;
    max-width: unset;
  }

  #header nav ul li:nth-child(1) {
    width: 97% !important;
  }

  #header nav ul li:nth-child(8) {
    width: 100% !important;
  }

  #header nav ul li:nth-child(8) a {
    width: 100% !important;
    max-width: 340px;
    margin: 3% auto;
    display: block;
    box-sizing: border-box;
    padding: 10px 20px;
  }

  #main {
    text-align: center;
  }

  #main::before {
    height: 70px;
  }

  #main h1 {
    top: 10px;
  }

  #main h1 img {
    width: 80%;
    max-width: 550px;
  }

  #anc_data h2 {
    max-width: 500px
  }




  nav ul li a {
    padding: 10px 10px;
  }

  .nav_plus {
    top: 1550px;
    display: block;
  }


  .nav_plus>div {
    width: 80%;
    max-width: 400px;
    margin: 0 auto 1%;
  }

  .message {
    line-height: 1.4;
  }

  #anc_about::before {
    top: auto;
    bottom: -10%;
    right: auto;
    left: 0;
  }

  .about_left {
    width: 95%;
  }

  .about_right {
    width: 90%;
    margin: 0 auto 15%;
  }


  .about_right>img:nth-of-type(1) {
    width: 75%;
    margin-left: 25%;
    margin-top: 0;
  }

  .about_right>img:nth-of-type(2) {
    width: 35%;
    position: absolute;
    bottom: -8%;
    left: 0;
  }

  .about_right>p {
    font-size: 90%;
    top: auto;
    bottom: -14%;
    right: 0;
  }

  #anc_ohad::before {
    width: 75%;
    max-width: 700px;
    top: auto;
    bottom: -35%;
    left: 0%;
  }

  #anc_ohad h2 {
    margin-left: 3%;
  }

  #anc_ohad h3 {
    font-size: 200%;
    font-weight: 700;
    margin-bottom: 2%;
    line-height: 1.2;
    margin-left: 3%;
    padding: 0 0;
  }

  #anc_ohad h3 span {
    font-size: 20px;
    font-weight: 500;
    display: block;
  }

  .ohad_left {
    width: 95%;
    box-sizing: border-box;
    padding: 0;
    margin: 0 auto 3%;
    text-align: left;
  }

  .ohad_right {
    width: 95%;
    margin: 0 auto;
  }

  #anc_dancer h2 small {
    display: block;
    margin-left: 0;
  }

  .dancer03 {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin: 3% auto 0;
  }

  .dancer03>dl {
    width: 22%;
    margin-top: 10px;
  }

  .dancer04 {
    width: 75%;
    display: flex !important;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin: 2% auto 0;
  }

  .dancer04>dl {
    width: 30%;
    margin-top: 10px;
  }

  .dancer03>dl dd,
  .dancer04>dl dd {
    color: #fff;
    font-size: 80%;
  }



  #anc_staff {
    width: 95%;
  }

  #anc_staff h2 small {
    display: block;
    margin-left: 0;
  }

  #anc_ticket {
    width: 95%;
  }

  #anc_ticket h2 small {
    display: block;
    margin-left: 0;
  }


  #anc_staff>div dl:nth-child(1),
  #anc_staff>div dl:nth-child(2) {
    margin-left: 5%;
  }

  #anc_staff>img {
    width: 30%;
    top: 0px;
    right: 0;
  }

  #anc_ticket>img {
    display: none;
  }

  #anc_ticket dl {
    font-size: 110%;
  }

  #anc_ticket dl:nth-of-type(1) {
    margin-bottom: 70px;
  }

  #anc_ticket dl dd a.btn_ticket {
    bottom: -40px;
    left: 160px;
  }

  #anc_ticket dl:nth-of-type(2) {
    margin-bottom: 0;
  }

  #anc_ticket>div>div img+p>a {
    margin-top: 5px;
  }

  #last {
    text-align: center;
  }

  #last .corona {
    width: 90%;
    margin: 0 auto 3%;
  }

  #last .corona>a:nth-of-type(1) {
    padding: 10px 0 10px;
  }

  #last .bunka {
    width: 90%;
    margin: 0 auto 3%;
  }

  #last .sp_tel {
    width: 80%;
    margin: 0 auto;
  }

  footer>div {
    text-align: center;
    line-height: 1.4;
    margin-bottom: 5%;
  }

  footer>div p {
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
  }

  footer h3 {
    line-height: 1.4;
    margin-bottom: 20px;
  }

  .foot_data {
    max-width: 540px;
    text-align: center;
  }

  .foot_data li {
    text-indent: 0;
    margin-left: 0;
    line-height: 1.4;
    margin-bottom: 10px;
  }

  footer>div a.underline {
    text-align: center;
    display: block;
    padding-top: 5px;
  }

  footer>div a.underline::before {
    content: '';
    width: 100%;
    height: 1px;
    display: block;
    background: #fff;
    position: absolute;
    bottom: auto;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
  }

  footer>div a.underline:hover::before {
    opacity: 1;
  }


  #foot_sns ul {
    width: 60%;
    max-width: 300px;
    margin: 20px auto 90px !important;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-end;
  }

  #foot_sns ul li:nth-child(1) {
    width: 25%;
    padding-left: 5px;
    padding-bottom: 5px;
  }

  #foot_sns ul li:nth-child(2) {
    width: 6%;
    padding-left: 5px;
    padding-bottom: 5px;
  }

  #foot_sns ul li:nth-child(3) {
    width: 10%;
    padding-left: 5px;
    padding-bottom: 5px;
  }

  #foot_sns ul li:nth-child(4) {
    width: 12%;
    padding-left: 5px;
    padding-bottom: 5px;
  }

  #foot_sns ul li:nth-child(5) {
    width: 300px;
    position: absolute;
    left: 0;
    right: 0;
    top: auto;
    bottom: -70px;
    margin: 0 auto;
  }

  #foot_sns ul li:nth-child(5) a {
    width: 90%;
    margin: 0 auto;
  }





  @media screen and (max-width: 680px) {

    #header #sns ul {
      right: 0;
    }

    #header #sns ul li {
      padding: 1% 5px 10px;
    }

    #foot_sns #sns ul {
      width: 40%;
      bottom: -35px;
    }

    #anc_ticket dl {
      font-size: 100%;
    }

    #anc_ticket dl dd a.btn_ticket {
      width: 260px;
      left: 0;
      right: 0;
      margin: 0 auto;
    }

    #anc_ticket dl dt {
      min-width: 140px;
    }

    #anc_ticket dl dd small {
      left: 145px;
    }

    #anc_ticket ul {
      font-size: 90%;
    }

    #anc_ticket {
      padding-bottom: 0;
    }

  }

  @media screen and (max-width: 580px) {


    .br_580 {
      display: inline;
    }

    #anc_data h2+p {
      font-size: 130%;
    }

    #anc_data h3 {
      font-size: 160%;
      font-weight: 500;
    }

    #anc_data h3+p {
      font-size: 130%;
    }

    #anc_data h3 span {
      padding: 1px 3% 2px 5%;
      margin: 10px auto 5px;
    }

    #anc_data .place span {
      font-size: 80%;
    }

    #anc_data .price {
      font-size: 180%;
    }

    #anc_data .message {
      font-size: 220%;
      line-height: 1.2;
    }

    #anc_about::before {
      bottom: -30%;
    }

    .about_right>p {
      font-size: 80%;
      bottom: -18%;
    }

    .foot_data li {
      text-indent: 0px;
      margin-left: 0px;
      font-size: 95%;
      line-height: 1.4;
      margin-bottom: 10px;
    }

  }


  @media screen and (max-width: 480px) {
    body {
      font-size: 13px;
      line-height: 1.8;
    }

    header #sns {
      padding: 0px 0 0;
      top: -8px;
    }


    header #sns>a {
      width: 60%;
      max-width: 600px;
      display: block;
      padding: 0 0 5px 0;
      box-sizing: border-box;
    }

    #header #sns ul {
      bottom: 3%;
    }

    #header #sns ul li {
      padding: 1% 5px 5px;
    }

    #main {
      margin-top: -8px;
    }

    #main h1 {
      top: 7px;
    }

    #anc_data>a {
      padding: 10px 7% 5px;
      box-sizing: border-box;
      margin-bottom: 8%;
    }

    #anc_data .price {
      font-size: 160%;
    }

    #anc_about::before {
      bottom: -36%;
    }


    footer #sns ul {
      bottom: -30px;
      right: 60px;
    }


    #anc_ticket dl dt {
      min-width: 125px;
    }


    #anc_ticket dl dd a.btn_ticket {
      padding: 3px 30px;
      width: 230px;
      bottom: -30px;
    }

    #anc_ticket dl dd small {
      bottom: -15px;
      left: 130px;
    }

    #anc_ticket>div>div img+p {
      font-size: 90%;
    }

    #anc_about::after,
    #anc_ohad::after,
    #anc_dancer::after,
    #anc_staff::after,
    #anc_ticket::after {
      left: -2%;
    }

    .about_left {
      padding: 3% 0 3% 0;
    }

    #anc_ohad h2,
    #anc_ohad h3 {
      margin-left: 0%;
    }

    .ohad_left,
    .ohad_right {
      width: 100%;
    }

    #anc_dancer,
    #anc_staff,
    #anc_ticket {
      margin: 5% auto 8%;
    }

    #anc_dancer h2,
    #anc_staff h2,
    #anc_ticket h2 {
      padding-left: 0;
      line-height: 1.4;
    }

    #anc_staff h2,
    #anc_ticket h2 {
      margin-bottom: 5%;
    }

    #anc_dancer h2 small,
    #anc_staff h2 small,
    #anc_ticket h2 small {
      font-size: 10px;
    }

    #anc_staff>div dl:nth-child(1) dt:nth-of-type(4) {
      width: auto !important
    }

    #anc_ticket dl {
      line-height: 1.6;
      margin-bottom: 3%;
    }

    #anc_ticket dl:nth-of-type(2) {
      margin-bottom: 3%;
    }

    #pageTop {
      right: 0px;
      bottom: 0px !important;
    }

    #pageTop a {
      display: block;
      width: 50px;
      height: 55px;
      background: url(../img/pagetop.jpg) no-repeat;
      background-size: 100%;
    }

    #lecture div dl dt {
      width: 60px;
      letter-spacing: -0.05em;
    }

    #lecture div dl dd {
      width: calc(100% - 60px);
      letter-spacing: -0.05em;
    }


    #anc_staff>div dl:nth-child(1),
    #anc_staff>div dl:nth-child(2) {
      margin-left: 0;
    }

    #anc_staff>div dl:nth-child(1) dt,
    #anc_staff>div dl:nth-child(2) dt {
      min-width: 170px;
    }

    #anc_staff>div dl:nth-child(1) dd,
    #anc_staff>div dl:nth-child(2) dd {
      min-width: calc(100% - 170px)
    }

    #anc_ticket dl dd a.btn_ticket {
      bottom: -33px;
    }

    .plus_ban {
      top: 1070px;
    }

    .plus_ban a {
      margin-bottom: 15px;
    }

    .only_pc480 {
      display: none;
    }

    .only_sp480 {
      display: block;
    }

    #anc_ticket dl {
      flex-wrap: wrap;
    }

    #anc_ticket dl dt {
      width: 100%;
      min-width: auto;
      text-align: left;
    }

    #anc_ticket dl dd {
      width: 100%;
      text-align: left;
      margin: 0 auto 5px;
      display: block;
    }

    #anc_ticket dl dd em {
      font-size: 100%;
    }

    #anc_ticket dl dd small {
      position: static;
    }

    .ticket_p {
      font-size: 90%;
    }

    #last .corona {
      margin-bottom: 4%;
    }

    #last .corona>a:nth-of-type(1) {
      padding: 2px 0 10px;
    }

    #anc_ticket dl dt {
      text-indent: -1.2rem;
      margin-left: 1.2rem
    }

    #anc_ticket dl dt::before {
      content: '■';
      padding-right: 3px;
    }

    #anc_ticket dl dd {
      margin-left: 1.5rem
    }

    #anc_ticket dl:nth-of-type(2) dd {
      margin-left: 1.5rem;
    }

    .foot_data li {
      text-align: center;
    }

    footer h3 {
      font-size: 125%;
    }

    #anc_beginners {
      padding: 3%;
    }

    #anc_beginners h2>span {
      line-height: 1.0;
      padding-top: 7px;
    }

    #anc_beginners h2>span>span {
      margin-top: 5%;
    }

    #anc_beginners h2>span::before {
      content: '参加費\A無料';
      width: 55px;
      text-align: center;
      color: #fff;
      font-weight: 700;
      font-size: 45%;
      display: inline-block;
      padding: 8px 0;
      box-sizing: border-box;
      line-height: 1.2;
      background: #000;
      position: absolute;
      top: 10px;
      left: -65px;
      white-space: pre;
    }

    #anc_beginners>div>p {
      font-size: 100%;
    }

    #anc_beginners>div {
      width: 95%;
    }

    #anc_beginners>div>p:nth-of-type(2) {
      font-size: 100%;
    }

    .begin_detail {
      padding-left: 0;
      margin-top: 40px;
    }

    .begin_entry {
      padding-left: 0;
      margin-top: 40px;
    }

    .begin_detail+p {
      width: 270px;
    }

    .begin_detail dt {
      width: 45px;
      letter-spacing: 0.2rem;
    }

    .begin_detail dt:last-of-type {
      letter-spacing: -0.1rem;
    }

    .begin_detail dd {
      width: calc(100% - 45px);
    }


    .begin_notice {
      margin-left: 35px;
      display: inline-block;
    }

    .begin_notice::before {
      left: -43px;
    }

    .br_480 {
      display: inline;
    }

    #anc_staff h2::before {
      width: 40px;
      left: 0;
    }

    #anc_ticket h2::after {
      width: calc(100% - 45px);
    }

    #anc_ticket h2::before {
      width: 40px;
      left: 0;
    }

    #anc_staff h2::after {
      width: calc(100% - 45px);
    }

    #anc_ticket dl:nth-of-type(1) {
      margin-bottom: 50px;
    }

    #anc_staff>div dl:nth-child(1) dt,
    #anc_staff>div dl:nth-child(2) dt {
      letter-spacing: -0.15rem;
      min-width: 125px;
    }

    #anc_staff>div dl:nth-child(1) dd,
    #anc_staff>div dl:nth-child(2) dd {
      min-width: calc(100% - 125px)
    }

    #anc_staff h2 img {
      width: 65px;
    }

    #anc_ticket h2 img {
      width: 125px;
    }


    #anc_staff>div {
      font-size: 90%;
    }

    footer {
      padding: 5% 0 0.5%;
    }

    #foot_sns ul {
      margin: 20px auto 70px !important;
    }

    #foot_sns ul li:nth-child(5) {
      bottom: -55px;
    }

    #anc_beginners::before {
      content: '';
      width: 140px;
      height: 100px;
      background: url(../img/begin_ttl_icon.png) no-repeat top right;
      background-size: 100% auto;
      display: block;
      position: absolute;
      top: -130px;
      right: -5px;
      z-index: 5;
    }

    #anc_beginners h2 {
      top: -140px;
    }

    #anc_study::before {
      content: '';
      width: 140px;
      height: 100px;
      background: url(../img/study_ttl_icon.png) no-repeat top right;
      background-size: 100% auto;
      display: block;
      position: absolute;
      top: -130px;
      left: -5px;
      z-index: 5;
    }

    .begin_detail dd a {
      margin-left: 0;
    }

    .begin_detail::before,
    .begin_entry::before {
      width: 100%;
      text-align: center;
      font-size: 120%;
      top: -28px;
    }

    .begin_qr {
      width: 100%;
    }

    .begin_qr>a {
      position: static;
      margin: 20px auto 20px;
    }

    .begin_line {
      margin-top: 30px;
      position: relative;
    }

    .begin_line span {
      width: 100%;
      display: block;
      position: absolute;
      top: -25px;
      left: 0;
      text-align: center;
      font-size: 110%;
      font-weight: bold;
    }

    .begin_line a {
      margin-top: 10px;
    }

    .begin_line br {
      display: none;
    }

  }

  @media screen and (max-width: 425px) {
    #anc_data .place {
      line-height: 1.2;
    }

    #anc_data .place span {
      font-size: 70%;
    }

    #foot_sns ul li:nth-child(5) {
      padding-bottom: 0;
    }

    #anc_staff>div dl:nth-child(1) dt,
    #anc_staff>div dl:nth-child(2) dt {
      letter-spacing: -0.15rem;
      min-width: 110px;
    }

    #anc_staff>div dl:nth-child(1) dd,
    #anc_staff>div dl:nth-child(2) dd {
      min-width: calc(100% - 110px);
    }

    .dancer_a>div:nth-child(1)>img {
      width: 120px;
    }

    .dancer_a>div:nth-child(2)>img {
      width: 90px;
    }

    .dancer_a>div:nth-child(3)>img {
      width: 125px;
    }

    #sns>p {
      font-size: 100%;
    }

  }

  @media screen and (max-width: 400px) {

    #anc_ticket dl dt {
      min-width: 100px;
    }


    .foot_data li {
      letter-spacing: -0.05rem;
      font-size: 90%;
    }

    footer>div {
      line-height: 1.4;
    }

  }

  @media screen and (max-width: 380px) {
    body {
      font-size: 11px;
      line-height: 1.8;
    }

    #anc_ticket>div {
      font-size: 90%;
    }

    .foot_data li {
      font-size: 80%;
    }

    #sns ul {
      bottom: -25px;
    }

    #anc_data .notice {
      font-size: 95%;
    }

    #anc_about::before {
      bottom: -56%;
    }

    .dancer03>dl dd,
    .dancer04>dl dd {
      letter-spacing: -0.09rem;
      font-size: 70%;
    }

    #anc_staff>div dl:nth-child(1) dt,
    #anc_staff>div dl:nth-child(2) dt {
      letter-spacing: -0.15rem;
      min-width: 90px;
    }

    #anc_staff>div dl:nth-child(1) dd,
    #anc_staff>div dl:nth-child(2) dd {
      min-width: calc(100% - 90px);
    }


  }
}

/* スマホのときのみ電話をかける */
@media (min-width: 850px) {
  a[href*='tel:'] {
    pointer-events: none;
    cursor: default;
    text-decoration: none !important;
  }
}