/***********************
	全体
	********************/

html,
body {
  height: 100%;
  width: 100%;
}

body {
  text-align: center;
  color: #595757;
  font-size: 15px;
}

.Wrapper {
  overflow-x: hidden;
}

.inner {
  margin: 0 auto;
}

.yellow {
  color: #fff000;
}

.bl {
  color: #0088c6;
}

.bold {
  font-weight: bold;
}
/********
	header
	************/
header {
  width: 100%;
}

.topArea {
  position: relative;
}

.snsArea {
  position: absolute;
  top: 25px;
  left: 5%;
  z-index: 500;
  overflow: hidden;
}

.snsArea li {
  float: left;
  margin-right: 20px;
  max-width: 26px;
}

.snsArea li a {
  display: block;
  margin: 0 auto;
  width: 100%;
  height: auto;
}

.snsArea li a img {
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.navArea {
  width: 100%;
  height: 100%;
  min-height: 100%;
  background-color: #009bdd;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  display: none;
}

.closeBtn {
  position: absolute;
  right: 5%;
  top: 38px;
  width: 58px;
  height: 58px;
  cursor: pointer;
}

.nav_list {
  margin: 200px auto 0;
}

.nav_list li {
  margin: 0 auto;
  margin-bottom: 40px;
  width: 400px;
  height: 60px;
}

.nav_list li a {
  width: 100%;
  height: 100%;

  display: block;
  margin: 0 auto;
  text-indent: -9999em;
}

.nav_list li a:hover {
  opacity: 1;
}

/********
	footer
	************/
footer {
  text-align: center;
}

.ft_top {
  padding: 15px 0 25px;
}

.ft_top p {
  line-height: 1.8em;
}

.ft_top p a {
  color: #2cbbca;
}

.ft_top .kando_logo {
  margin: 25px auto;
}

.ft_btm {
  width: 100%;
  background-color: #dcdddd;
}

.ft_btm small {
  font-size: 12px;
  display: block;
  padding: 15px 0;
}

/********
	main
	************/

.mv {
  width: 100%;
  background-color: #ffe100;
  position: relative;
}

.logo {
  margin: 0px auto;
  padding: 50px 0 25px;
  position: relative;
  z-index: 300;
  max-width: 537px;
}

.logo img {
  width: 100%;
}

.app {
}

.dateArea {
  margin-bottom: 15px;
  position: relative;
  z-index: 300;
  opacity: 0;
  transition: 1s;
}

.dateArea p {
  display: inline-block;
  max-width: 390px;
}

.dateArea p img {
  width: 100%;
}

.top_txt {
  font-size: 14px;
  opacity: 0;
  transition: 1s;
}

.dateArea.show,
.top_txt.show {
  opacity: 1;
}

.orange_sec {
  width: 100%;
  background-color: #eca383;
  color: #fff;
}

.blue_sec {
  width: 100%;
  background-color: #009bdd;
  color: #fff;
}

.blue_info {
  width: 100%;
  background-color: #009bdd;
  color: #fff;
  padding: 100px 0;
}

.yellow_info {
  width: 100%;
  background-color: #ffe100;
  padding: 50px 0 60px;
}

.cs {
  padding: 100px 0;
}

.sec_ttl {
  padding-top: 50px;
  margin-bottom: 20px;
}

.wave_btm {
  position: relative;
  width: 100%;
}

.wave_btm::after {
  content: "";
  display: block;
  width: 100%;
  height: 40px;
  background: url(../images/wave_up.png);
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 100;
}

.wave_top {
  position: relative;
  width: 100%;
}

.wave_top::before {
  content: "";
  display: block;
  width: 100%;
  height: 46px;
  background: url(../images/wave_btm.png);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}

.wave_top_p {
  position: relative;
  width: 100%;
}

.wave_top_p::before {
  content: "";
  display: block;
  width: 100%;
  height: 46px;
  background: url(../images/wave_btm_p.png);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}

.wave_top_y {
  position: relative;
  width: 100%;
}

.wave_top_y::before {
  content: "";
  display: block;
  width: 100%;
  height: 40px;
  background: url(../images/wave_up_y.png);
  position: absolute;
  top: -40px;
  left: 0;
  z-index: 100;
}

.wave_btm_y::after {
  content: "";
  display: block;
  width: 100%;
  height: 40px;
  background: url(../images/wave_btm_y.png);
  position: absolute;
  bottom: -30px;
  left: 0;
  z-index: 100;
}

.tel::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 17px;
  background: url(../images/icon_tel.png) no-repeat;
  margin-right: 5px;
  vertical-align: text-top;
}

.mail::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 17px;
  background: url(../images/icon_mail.png) no-repeat;
  margin-right: 5px;
  vertical-align: text-top;
}

.aboutArea {
  border-top: 1px solid #fff;
  color: #fff;
  font-size: 15px;
  overflow: hidden;
  margin: 0 auto;
  text-align: left;
}

.aboutArea .tel::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 17px;
  background: url(../images/icon_tel_w.png) no-repeat;
  margin-right: 5px;
  vertical-align: text-top;
}

.aboutArea .mail::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 17px;
  background: url(../images/icon_mail_w.png) no-repeat;
  margin-right: 5px;
  vertical-align: text-top;
}

.aboutArea dl {
  margin-top: 15px;
}

.aboutArea dd .adress {
  border: 1px solid #f7f7c6;
  border-radius: 10px;
  padding: 5px 15px;
  margin-top: 10px;
}

.nominees_sec {
  padding-top: 0px;
}

.nominees_slider_list {
  width: 100%;
  height: auto;
}

.about_sec {
  padding-top: 50px;
}

.judgement,
.guest {
  overflow: hidden;
}

.judge_sec,
.guest_sec {
  padding-bottom: 80px;
}

.scheduleArea {
  text-align: left;
  overflow: hidden;
  margin: 25px auto;
}

.map p {
  text-align: right;
  font-size: 12px;
}

.contactArea {
  text-align: left;
  overflow: hidden;
  margin: 20px auto;
}

.txt {
  text-align: left;
}

.judgement .name,
.guest .name {
  font-size: 23px;
  margin-bottom: 20px;
  font-weight: 600;
}

.judgement .name small {
  font-size: 15px;
}

.judgement .name span,
.guest .name span {
  font-size: 15px;
}

.judgement .coming {
  max-width: 318px;
  width: 80%;
  margin: 50px auto;
}

.judgement .coming img {
  width: 100%;
}

.screenings_detail {
  width: 590px;
  margin: 0 auto 100px;
  background-color: #fff;
  position: relative;
  padding-bottom: 20px;
}

.screenings_detail::before {
  content: "";
  display: block;
  width: 58px;
  height: 100%;
  min-height: 663px;
  background: url(../images/screenings_firm.jpg);
  position: absolute;
  top: 0;
  left: -58px;
}

.screenings_detail::after {
  content: "";
  display: block;
  width: 58px;
  height: 100%;
  min-height: 663px;
  background: url(../images/screenings_firm.jpg);
  position: absolute;
  top: 0;
  right: -58px;
}

.orange_sec .screenings_detail {
  color: #595757;
}

.screenings_detail .ttl {
  font-weight: bold;
  font-size: 24px;
  margin-bottom: 10px;
}

.screenings_detail .desc {
  padding: 0 20px;
  margin-bottom: 20px;
}

.screenings_detail .awards {
  font-size: 15px;
  background-color: #f7f7c6;
  margin: 0 20px;
}

.screening_director {
  padding: 50px 0;
}

.screening_director p {
  margin-bottom: 20px;
}

.screening_director .name {
  font-size: 19px;
}

.screening_director .name span {
  font-size: 15px;
}

/*スライド部分*/

.nominees_slider {
  position: relative;
  margin-bottom: 40px;
}

.nominees_slider::before {
  content: "";
  display: block;
  width: 100%;
  height: 39px;
  background: url(../images/nominees_firm.jpg) repeat-x;
}

.nominees_slider::after {
  content: "";
  display: block;
  width: 100%;
  height: 39px;
  background: url(../images/nominees_firm.jpg) repeat-x;
}

.morePage {
}

.contactArea dd a {
  color: #2cbbca;
}

.map a {
  color: #595757;
  text-decoration: none;
}

.map a:hover {
  text-decoration: underline;
}

.special_sec .inner {
  padding-bottom: 50px;
  position: relative;
}

.special_sec .sec_ttl {
  padding-top: 100px;
}

.special_sec h3 {
  font-size: 25px;
}

.special_list {
  padding: 50px 0;
}

.special_list .special_list_item {
  width: 960px;
  margin: 0 auto;
  border-top: dashed 2px #fff;
  padding: 50px 0;
}

.special_list .special_list_item::after {
  content: "";
  display: block;
  clear: both;
}

.special_list .special_list_item .imgArea {
  position: relative;
}

.special_list .special_list_item .imgArea::before {
  content: "";
  display: block;
  width: 77px;
  height: 97px;
  background: url(../images/rabel.png) no-repeat;
  position: absolute;
  top: -30px;
  left: 0;
}

.special_list .special_list_item .imgArea span {
  color: #e8593d;
  position: absolute;
  top: -18px;
  left: 34px;
  font-weight: bold;
}

.special_list .special_list_item dt {
}

.special_list .special_list_item dd {
  text-align: left;
  width: 480px;
  float: right;
}

.special_list .special_list_item dd h4 {
  line-height: 1em;
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 25px;
}

.special_list .special_list_item p {
  font-size: 15px;
}

.special_list .special_list_item .director {
  font-size: 20px;
  margin-bottom: 20px;
}

.special_list .special_list_item .memo {
  border: solid 1px #fff897;
  border-radius: 10px;
  padding: 10px 15px;
  margin-top: 15px;
}

/***********************
	PCのみ
	********************/
@media screen and (min-width: 769px) {
  body {
    min-width: 1200px;
  }

  #canvas {
    width: 1200px;
    height: 900px;
    position: absolute;
    z-index: 200;
  }

  .inner {
    width: 1200px;
  }

  .sp_br {
    display: none;
  }

  .pc_br {
    display: block;
  }

  .pc {
    display: block;
  }

  .sp {
    display: none;
  }

  .nav_list .top a {
    background: url(../images/nav00.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .top a:hover {
    background: url(../images/nav_h_00.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .judge a {
    background: url(../images/nav01.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .judge a:hover {
    background: url(../images/nav_h_01.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .nominees a {
    background: url(../images/nav02.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .nominees a:hover {
    background: url(../images/nav_h_02.png) no-repeat center center;
    background-size: 100%;
  }
  .nav_list .special a {
    background: url(../images/nav03.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .special a:hover {
    background: url(../images/nav_h_03.png) no-repeat center center;
    background-size: 100%;
  }
  .nav_list .talkshow a {
    background: url(../images/nav04.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .talkshow a:hover {
    background: url(../images/nav_h_04.png) no-repeat center center;
    background-size: 100%;
  }
  .nav_list .reserv a {
    background: url(../images/nav05.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .reserv a:hover {
    background: url(../images/nav_h_05.png) no-repeat center center;
    background-size: 100%;
  }
  .nav_list .schedule a {
    background: url(../images/nav06.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .schedule a:hover {
    background: url(../images/nav_h_06.png) no-repeat center center;
    background-size: 100%;
  }
  .nav_list .access a {
    background: url(../images/nav07.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .access a:hover {
    background: url(../images/nav_h_07.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .about a {
    background: url(../images/nav08.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .about a:hover {
    background: url(../images/nav_h_08.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .privacy a {
    background: url(../images/nav09.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .privacy a:hover {
    background: url(../images/nav_h_09.png) no-repeat center center;
    background-size: 100%;
  }

  .openBtn {
    position: fixed;
    width: 58px;
    height: 58px;
    background-color: #2c90ca;
    border: solid 1px #fff;
    border-radius: 5px;
    right: 5%;
    top: 25px;
    z-index: 500;
    cursor: pointer;
  }

  .openBtn img {
    display: block;
    width: 42px;
    height: 31px;
    margin: 13px auto;
  }

  dl dt {
    float: left;
    clear: left;
    -moz-text-align-last: justify;
    text-align-last: justify;
  }

  .mv::after {
    content: "";
    display: block;
    width: 100%;
    height: 102px;
    background: url(../images/top_hill.png);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 100;
  }

  .mv .inner {
    height: 810px;
  }

  .logo {
    animation: animLogo 3s forwards ease-out;
    transform-origin: 50% 50%;
    animation-play-state: running;
    display: none;
  }

  @keyframes animLogo {
    0% {
      transform: scale(0.8, 0.8);
    }
    5% {
      transform: scale(1.2, 1.2);
    }
    10% {
      transform: scale(1, 1);
    }
    15% {
      transform: scale(1.1, 1.1);
    }
    20% {
      transform: scale(1, 1);
    }
    100% {
      transform: scale(1, 1);
    }
  }

  .dateArea .free {
    animation: rotateFree 1s linear forwards;
    animation-play-state: running;
  }

  @keyframes rotateFree {
    0% {
      transform: rotate(0);
    }
    100% {
      transform: rotate(-10deg);
    }
  }

  .about_sec {
    padding-bottom: 150px;
  }

  .aboutArea {
    width: 765px;
  }

  .aboutArea dt {
    width: 95px;
  }

  .aboutArea dd {
    margin-left: 135px;
    margin-bottom: 30px;
  }

  .aboutArea dd .adress {
    width: 480px;
  }

  .judgement,
  .guest {
    width: 960px;
    margin: 50px auto;
  }

  .judgement .imgArea,
  .guest .imgArea {
    width: 217px;
    float: left;
  }

  .judgement .txt,
  .guest .txt {
    width: 716px;
    float: right;
    text-align: left;
    font-size: 15px;
  }

  .judge_sec .sec_ttl::after,
  .special_sec .sec_ttl::after,
  .stage_sec .sec_ttl::after {
    content: "";
    display: block;
    width: 770px;
    height: 1px;
    background-color: #fff;
    margin: 10px auto 50px;
  }

  .stage_sec .sec_ttl::after {
    background-color: #b7b7b7;
  }

  .screening_sec {
    padding: 50px 0;
  }

  .blue_info .inner {
  }

  .schedule_sec {
    width: 600px;
    float: left;
  }

  .access_sec {
    float: right;
    width: 600px;
  }

  .scheduleArea {
    width: 400px;
  }

  .scheduleArea dt {
    width: 50px;
    line-height: 2em;
  }

  .scheduleArea dd {
    margin-left: 70px;
    line-height: 2em;
  }

  .scheduleArea dd .comment {
    display: block;
    font-size: 10px;
    line-height: 1.75;
    margin-top: 10px;
  }

  .map {
    width: 408px;
    margin: 25px auto;
  }

  .contactArea {
    width: 408px;
  }

  .contactArea dt {
    width: 95px;
    line-height: 2em;
  }

  .contactArea dd {
    margin-left: 120px;
    line-height: 2em;
  }

  /*仮*/
  .topBtnArea {
    position: fixed;
    bottom: 100px;
    right: 5%;
    width: 103px;
    height: 157px;
    z-index: 500;
  }

  .topBtnArea a {
    width: 100%;
    height: auto;
    display: block;
  }

  #topBtn {
    width: 103px;
    height: 157px;
    position: absolute;
  }

  .topBtnArea a:hover {
    opacity: 1;
  }

  .cs::after {
    content: "";
    display: block;
    width: 120px;
    height: 86px;
    background: url(../images/sp/popkun_sp.png) no-repeat;
    margin: 50px auto 50px;
  }

  /*装飾*/
  #scr_canvas,
  #scr_canvas2,
  #scr_canvas3,
  #scr_canvas4,
  #scr_canvas5,
  #scr_canvas6,
  #scr_canvas7,
  #scr_canvas8,
  #scr_canvas9,
  #scr_canvas10,
  #scr_canvas11 {
    position: relative;
  }

  #scr_canvas::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 180px;
    width: 123px;
    height: 76px;
    background: url(../images/scroll_03.png) no-repeat;
  }

  #scr_canvas::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 120px;
    width: 125px;
    height: 89px;
    background: url(../images/scroll_06.png) no-repeat;
  }

  #scr_canvas2::before {
    content: "";
    display: block;
    position: absolute;
    top: -70px;
    left: 120px;
    width: 156px;
    height: 89px;
    background: url(../images/scroll_30.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas2::after {
    content: "";
    display: block;
    position: absolute;
    top: -70px;
    right: 120px;
    width: 97px;
    height: 76px;
    background: url(../images/scroll_14.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas3::before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 120px;
    width: 197px;
    height: 87px;
    background: url(../images/scroll_25.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas3::after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    right: 180px;
    width: 104px;
    height: 124px;
    background: url(../images/scroll_22.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas4::before {
    content: "";
    display: block;
    position: absolute;
    top: 150px;
    right: 0px;
    width: 74px;
    height: 107px;
    background: url(../images/scroll_26.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas7::before {
    content: "";
    display: block;
    position: absolute;
    top: -70px;
    left: 120px;
    width: 72px;
    height: 79px;
    background: url(../images/scroll_44.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas8::after {
    content: "";
    display: block;
    position: absolute;
    top: -120px;
    right: 120px;
    width: 210px;
    height: 146px;
    background: url(../images/scroll_43.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas5::after {
    content: "";
    display: block;
    position: absolute;
    top: -120px;
    left: 120px;
    width: 315px;
    height: 95px;
    background: url(../images/scroll_38.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas6 {
    clear: both;
  }

  #scr_canvas6::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 20px;
    left: 150px;
    width: 210px;
    height: 115px;
    background: url(../images/scroll_42.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas9::after {
    content: "";
    display: block;
    position: absolute;
    top: -140px;
    right: 120px;
    width: 238px;
    height: 110px;
    background: url(../images/scroll_45.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas10::before {
    content: "";
    display: block;
    position: absolute;
    top: 200px;
    right: 200px;
    width: 84px;
    height: 90px;
    background: url(../images/scroll_46.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas11::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 10px;
    left: 230px;
    width: 107px;
    height: 84px;
    background: url(../images/scroll_47.png) no-repeat;
    z-index: 200;
  }

  #scr_canvas11::after {
    content: "";
    display: block;
    position: absolute;
    top: -240px;
    left: 0px;
    width: 98px;
    height: 90px;
    background: url(../images/scroll_48.png) no-repeat;
    z-index: 200;
  }

  .stage {
    width: 900px;
    margin: 0px auto;
    padding: 0px 0 50px;
    display: flex;
    justify-content: space-between;
  }

  .stage .imgArea {
  }

  .stage .txt {
    width: 500px;
  }

  .stage .txt h4 {
    font-size: 20px;
    line-height: 2em;
    margin: 0 auto 10px;
  }

  .special_sec .lead {
    padding-top: 20px;
  }

  .special_sec .lead p {
    font-size: 1.3em;
    margin-bottom: 30px;
    letter-spacing: 1px;
    font-weight: bold;
  }

  .special_sec .lead h3 {
    font-size: 2.8em;
    margin-bottom: 20px;
    letter-spacing: 2px;
  }

  .special_sec {
    padding-bottom: 50px;
  }

  .special_sec .stage {
    flex-direction: row-reverse;
  }

  .special_sec .stage .imgArea {
    width: 387px;
  }

  .special_sec .stage .txt {
    line-height: 2em;
    margin-left: 70px;
  }

  .special_sec .stage .txt h4 {
    font-size: 1.5em;
    margin-bottom: 30px;
    letter-spacing: 2px;
  }

  .special_sec .stage .txt .linkArea {
    margin-top: 30px;
  }

  .special_sec .stage .txt .linkArea a {
    color: #fff;
  }

  .special_sec .y_box {
    width: 770px;
    box-sizing: border-box;
    padding: 40px 100px 60px;
    border: solid 3px #fff000;
    border-radius: 10px;
    margin: 0 auto 50px;
    font-size: 1.2em;
  }

  .special_sec .y_box .scheDule {
    margin-bottom: 40px;
  }

  .special_sec .y_box .scheDule .row {
    display: flex;
    margin-bottom: 15px;
  }

  .special_sec .y_box .scheDule .row dt {
    float: none;
    margin-right: 20px;
  }

  .special_sec .y_box .scheDule .row dd {
    text-align: left;
  }

  .special_sec .ticketArea {
    width: 785px;
    margin: 50px auto;
  }

  .special_sec .ticketArea img {
    width: 100%;
  }

  .stage_sec .stage {
    padding: 50px 0 90px;
  }

  .stage_sec .stage .txt {
    line-height: 2em;
    width: 550px;
  }

  .stage_sec .stage .txt h3 {
    font-size: 2em;
    margin-bottom: 30px;
    letter-spacing: 2px;
    line-height: 1.75;
    padding-bottom: 5px;
    display: inline-block;
    border-bottom: dotted 2px #595757;
  }

  .stage_sec .stage .txt .day {
    font-size: 1.2em;
    font-weight: 600;
    margin-bottom: 20px;
  }

  .stage_sec .stage .guestArea {
    margin-top: 30px;
  }

  .stage_sec .stage .bl_box {
    box-sizing: border-box;
    padding: 3px 0px;
    border: solid 3px #0088c6;
    text-align: center;
    border-radius: 10px;
    font-weight: 600;
    margin-bottom: 20px;
  }

  .stage_sec .stage .list_box {
    display: flex;
  }

  .stage_sec .stage .list_box .listArea {
  }

  .stage_sec .stage .list_box .listArea p {
    font-size: 1.15em;
    margin-right: 30px;
  }

  .stage_sec .stage .list_box .listArea span {
    display: inline-block;
    margin-right: 30px;
  }

  .stage_sec .stage .imgArea {
    width: 238px;
    margin-left: 50px;
  }

  .stage_sec .stage .imgArea img {
    width: 100%;
  }

  .reserv_sec .inner {
    padding: 100px 0;
  }

  .reserv_sec h3 {
    text-align: center;
    font-size: 1.2em;
    line-height: 1.5;
    margin-bottom: 40px;
  }

  .reserv_sec .busArea {
    width: 770px;
    margin: 50px auto;
  }

  .reserv_sec .busArea img {
    width: 100%;
  }
}
/***********************
	spのみ
	********************/
@media screen and (max-width: 768px) {
  body {
    font-size: 14px;
    -webkit-overflow-scrolling: touch;
  }
  .inner {
    width: 90%;
  }

  .sp_br {
    display: block;
  }

  .pc_br {
    display: none;
  }

  .pc {
    display: none;
  }

  .sp {
    display: block;
  }

  .topBtnArea {
    display: none;
  }

  .topBtnArea a {
    display: none;
  }

  .blockimg {
    display: block;
    width: 100%;
    height: auto;
  }

  .topArea {
    width: 100%;
    height: 60px;
    background-color: #009bdd;
    position: fixed;
    z-index: 500;
  }

  .snsArea {
    top: 20px;
    left: 2%;
  }

  .snsArea li {
    float: left;
    margin-right: 10px;
  }

  .snsArea li a img {
    width: 17.3333px;
    height: 20px;
    margin: 0 auto;
  }
  .nav_list {
    margin: 100px auto 0;
  }

  .nav_list li {
    margin: 0 auto 15px;
    width: 80%;
    height: auto;
  }

  .nav_list li a {
    display: block;
    width: 100%;
    height: 0;
    width: 80%;
    padding-bottom: 16%;
    margin: 0 auto;
  }

  .nav_list .top a {
    background: url(../images/nav00_sp.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .judge a {
    background: url(../images/nav01_sp.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .nominees a {
    background: url(../images/nav02_sp.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .special a {
    background: url(../images/nav03_sp.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .talkshow a {
    background: url(../images/nav04_sp.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .reserv a {
    background: url(../images/nav05_sp.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .schedule a {
    background: url(../images/nav06_sp.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .access a {
    background: url(../images/nav07_sp.png) no-repeat center center;
    background-size: 100%;
  }

  .nav_list .about a {
    background: url(../images/nav08_sp.png) no-repeat center center;
    background-size: 100%;
  }

  .openBtn {
    position: absolute;
    right: 5%;
    top: 15px;
  }

  .closeBtn {
    right: 3%;
    top: 15px;
  }

  .logo {
    width: 40%;
    margin: 0 auto;
    padding-bottom: 25px;
    display: block;
  }

  .logo img {
    width: 100%;
  }

  .dateArea {
    width: 85%;
    overflow: hidden;
    margin: 0 auto 15px;
    margin-right: 2%;
    opacity: 1;
  }

  .dateArea p {
    width: 90%;
    display: block;
    float: left;
  }

  .dateArea .date {
    width: 80%;
    margin: 0 auto 10px;
  }

  .dateArea .free {
    width: 18%;
    margin-left: 2%;
  }

  .top_txt {
    font-size: 13px;
    opacity: 1;
  }

  .mv {
    padding-bottom: 31%;
    padding-top: 60px;
  }

  .mv::after {
    content: "";
    display: block;
    width: 100%;
    height: 0px;
    padding-top: 29%;
    background: url(../images/sp/top_btm.png) no-repeat left top;
    background-size: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 100;
  }

  .cs {
    width: 45%;
    margin: 0 auto;
    padding: 50px 0px;
  }

  .cs::after {
    content: "";
    display: block;
    width: 120px;
    height: 86px;
    background: url(../images/sp/popkun_sp.png) no-repeat;
    margin: 50px auto 50px;
  }

  .adress {
    line-height: 1.5em;
    font-size: 13px;
  }

  dl dd {
    margin-bottom: 15px;
  }

  dl dt::before {
    content: "【";
  }

  dl dt::after {
    content: "】";
  }

  .about_sec {
    padding-bottom: 100px;
  }

  .dateArea .free {
    transform: rotate(-10deg);
  }

  .wave_btm::after {
    width: 100%;
    height: 0px;
    padding-top: 3.3%;
    background-repeat: no-repeat;
    background-size: 150%;
  }

  .wave_top::before {
    width: 100%;
    height: 0;
    padding-bottom: 5%;
    background-repeat: no-repeat;
    background-size: 150%;
  }

  .wave_top_y::before {
    width: 100%;
    height: 0;
    padding-bottom: 5%;
    background-repeat: no-repeat;
    background-size: 150%;
    top: -18px;
  }

  .wave_top_y::after {
    width: 100%;
    height: 0px;
    padding-top: 5.3%;
    background-repeat: no-repeat;
    background-size: 150%;
    bottom: -10px;
  }

  .judgement,
  .guest {
    margin: 25px auto;
  }

  .judgement .imgArea {
    width: 70%;
    margin: 0px auto 30px;
  }

  .guest {
    margin-bottom: 60px;
  }

  .judgement .name,
  .guest .name {
    text-align: center;
  }

  .akagidan {
    text-align: center;
    width: 100%;
    margin: 0 auto;
  }

  .ft_top {
    width: 90%;
    margin: 0 auto;
  }

  .ft_top p {
    font-size: 0.9em;
  }

  .ft_btm small {
    font-size: 10px;
  }

  /*装飾*/
  .mv::before {
    content: "";
    display: block;
    width: 30%;
    height: 0;
    padding-bottom: 69.7%;
    position: absolute;
    left: 10px;
    top: 80px;
    background: url(../images/sp/flag_sp.png) no-repeat;
    background-size: 100%;
  }

  #sp_canvas {
    width: 100%;
    position: relative;
  }

  #sp_canvas::before {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 81.4%;
    position: absolute;
    top: 30px;
    right: 0;
    background: url(../images/sp/top_sp.png) no-repeat;
    background-size: 100%;
  }

  .judge_sec .inner {
    position: relative;
  }

  .about_sec .sec_ttl {
    position: relative;
  }

  .about_sec .sec_ttl::before {
    content: "";
    display: block;
    width: 15%;
    height: 0;
    padding-bottom: 68.3%;
    position: absolute;
    top: 0px;
    right: 0;
    background: url(../images/sp/square02_sp.png) no-repeat;
    background-size: 100%;
  }

  .about_sec .sec_ttl::after {
    content: "";
    display: block;
    width: 15%;
    height: 0;
    padding-bottom: 92.9%;
    position: absolute;
    top: 0px;
    left: 10px;
    background: url(../images/sp/square03_sp.png) no-repeat;
    background-size: 100%;
  }

  .judge_sec .inner::after {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 29.2%;
    position: absolute;
    bottom: -170px;
    right: 0px;
    background: url(../images/sp/about_btm.png) no-repeat;
    background-size: 100%;
    z-index: 200;
  }

  .screening_sec .inner {
    padding-top: 50px;
    padding-bottom: 50px;
    position: relative;
  }

  .screening_sec .inner::before {
    content: "";
    display: block;
    width: 35%;
    height: 0;
    padding-bottom: 44.1%;
    position: absolute;
    top: 0;
    left: 0px;
    background: url(../images/sp/judge_btm.png) no-repeat;
    background-size: 100%;
    z-index: 200;
  }

  .screening_sec .inner::after {
    content: "";
    display: block;
    width: 45%;
    height: 0;
    padding-top: 23.8%;
    position: absolute;
    bottom: -65px;
    left: 0px;
    background: url(../images/sp/screenings_btm.png) no-repeat;
    background-size: 100%;
    z-index: 200;
  }

  .special_sec .inner::before {
    content: "";
    display: block;
    width: 90%;
    height: 0;
    padding-bottom: 23.7%;
    position: absolute;
    top: -25px;
    left: 5%;
    background: url(../images/sp/stage_btm.png) no-repeat;
    background-size: 100%;
    z-index: 200;
  }

  .stage_sec .inner {
    position: relative;
  }

  .stage_sec .inner::before {
    content: "";
    display: block;
    width: 90%;
    height: 0;
    padding-bottom: 23.7%;
    position: absolute;
    top: -65px;
    left: 5%;
    background: url(../images/sp/special_btm.png) no-repeat;
    background-size: 100%;
    z-index: 200;
  }

  .blue_info .inner {
    position: relative;
  }

  .reserv_sec .inner::before {
    content: "";
    display: block;
    width: 40%;
    height: 0;
    padding-bottom: 27.3%;
    position: absolute;
    top: -40px;
    right: 30px;
    background: url(../images/scroll_45.png) no-repeat;
    background-size: 100%;
    z-index: 200;
  }

  .yellow_sche .inner::before {
    content: "";
    display: block;
    width: 45%;
    height: 0;
    padding-bottom: 27.3%;
    position: absolute;
    top: -40px;
    right: 30px;
    background: url(../images/sp/guest_btm.png) no-repeat;
    background-size: 100%;
    z-index: 200;
  }

  .yellow_sche .inner::after {
    content: "";
    display: block;
    width: 25%;
    height: 0;
    padding-bottom: 50%;
    position: absolute;
    bottom: 0px;
    right: 50px;
    background: url(../images/sp/access_btm.png) no-repeat;
    background-size: 100%;
    z-index: 200;
  }

  .screenings_detail {
    width: 90%;
    text-align: left;
    margin-bottom: 50px;
  }

  .screenings_detail .imgArea img {
    display: block;
    width: 100%;
    height: auto;
  }

  .screenings_detail::before {
    content: "";
    display: block;
    width: 10%;
    left: -10%;
    background-size: 100%;
  }

  .screenings_detail::after {
    content: "";
    display: block;
    width: 10%;
    right: -10%;
    background-size: 100%;
  }

  .screenings_detail .ttl {
    font-size: 20px;
    text-align: center;
    margin: 15px auto;
  }

  .screenings_detail .desc {
    padding: 0 20px;
    margin-bottom: 20px;
  }

  .screenings_detail .awards {
    background-color: #f7f7c6;
    margin: 0 20px;
  }

  .screenings_detail .awards p {
    margin: 0px 10px;
    font-size: 14px;
    padding: 10px 0;
  }

  .screening_director {
    padding: 50px 0;
  }

  .screening_director p {
    margin-bottom: 20px;
  }

  .screening_director .name {
    font-size: 19px;
  }

  .screening_director .name span {
    font-size: 15px;
  }

  .stage_sec h3 {
    font-size: 1.5em;
    margin-bottom: 20px;
    line-height: 1.5em;
  }

  .stage {
    width: 100%;
    margin: 0px auto;
    padding-bottom: 50px;
  }

  .stage .imgArea {
    width: 100%;
    margin: 0 auto;
    margin-bottom: 30px;
  }

  .stage .imgArea img {
    display: block;
    width: 70%;
    height: auto;
    margin: 0 auto;
  }

  .stage .txt {
    width: 100%;
  }

  .stage .txt h4 {
    font-size: 1.2em;
    line-height: 1.5em;
    margin: 0 auto 10px;
  }

  .stage .imgArea {
  }

  .special_sec .lead {
    padding-top: 30px;
  }

  .special_sec .lead p {
    font-size: 3.7vw;
    margin-bottom: 10px;
    letter-spacing: 1px;
    font-weight: bold;
  }

  .special_sec .lead img {
    width: 100%;
  }

  .special_sec .lead h3 {
    display: block;
    width: 100%;
    margin-bottom: 20px;
  }

  .special_sec {
    padding-bottom: 40px;
  }

  .special_sec .stage .imgArea {
  }

  .special_sec .stage .txt {
    line-height: 2em;
  }

  .special_sec .stage .txt h4 {
    font-size: 4vw;
    margin-bottom: 20px;
    letter-spacing: 2px;
  }

  .special_sec .stage .txt .linkArea {
    margin-top: 30px;
  }

  .special_sec .stage .txt .linkArea a {
    color: #fff;
  }

  .special_sec .y_box {
    width: 100%;
    box-sizing: border-box;
    padding: 30px 5%;
    border: solid 3px #fff000;
    border-radius: 10px;
    margin: 0 auto 50px;
    font-size: 3vw;
  }

  .special_sec .y_box img {
    width: 100%;
  }

  .special_sec .ticketArea {
    width: 100%;
    margin: 30px auto;
  }

  .special_sec .ticketArea img {
    width: 100%;
  }

  .special_sec .y_box .scheDule {
    margin-bottom: 0px;
  }

  .special_sec .y_box .scheDule .row {
    display: flex;
    width: 100%;
    text-align: left;
  }

  .special_sec .y_box .scheDule .row dt {
    float: none;
    width: 35%;
  }

  .special_sec .y_box .scheDule .row dd {
    text-align: left;
    width: 65%;
  }

  .stage_sec .sec_ttl {
    max-width: 100%;
  }

  .stage_sec .sec_ttl img {
    width: 90%;
    margin: 0 auto;
  }

  .stage_sec .stage {
    padding: 0px 0 90px;
  }

  .stage_sec .stage .txt {
    line-height: 2em;
  }

  .stage_sec .stage .imgArea h3 {
    font-size: 4vw;
    margin-bottom: 20px;
    letter-spacing: 1px;
    line-height: 2;
  }

  .stage_sec .stage .imgArea {
    width: 100%;
    margin: 0 auto 30px;
  }

  .stage_sec .stage .imgArea img {
    width: 60%;
    margin: 30px auto;
  }

  .stage_sec .stage .imgArea h3 {
    font-size: 5vw;
    margin-bottom: 30px;
    letter-spacing: 2px;
    line-height: 1.75;
    padding-bottom: 5px;
    display: inline-block;
    border-bottom: dotted 2px #595757;
  }

  .stage_sec .stage .imgArea p {
    text-align: left;
  }

  .stage_sec .stage .imgArea .day {
    font-size: 4vw;
    font-weight: 600;
    margin-bottom: 10px;
    text-align: center;
  }

  .stage_sec .stage .guestArea {
    margin-top: 30px;
  }

  .stage_sec .stage .bl_box {
    box-sizing: border-box;
    padding: 3px 0px;
    border: solid 3px #0088c6;
    text-align: center;
    border-radius: 10px;
    font-weight: 600;
    margin-bottom: 20px;
    font-size: 4vw;
  }

  .stage_sec .stage .list_box {
    display: block;
  }

  .stage_sec .stage .list_box .listArea {
  }

  .stage_sec .stage .list_box .listArea p {
    font-size: 4vw;
    margin-bottom: 15px;
  }

  .stage_sec .stage .list_box .listArea span {
    display: inline-block;
    margin-right: 30px;
  }

  .stage_sec .stage .imgArea {
  }

  .reserv_sec .inner {
    padding: 80px 0 50px;
    position: relative;
  }

  .reserv_sec h3 {
    text-align: center;
    font-size: 3.3vw;
    line-height: 1.5;
    margin-bottom: 30px;
  }

  .reserv_sec .busArea {
    width: 100%;
    margin: 50px auto;
  }

  .reserv_sec .busArea img {
    width: 100%;
  }

  .judge_sec .sec_ttl::after,
  .special_sec .sec_ttl::after,
  .stage_sec .sec_ttl::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #fff;
    margin: 10px auto 20px;
  }

  .stage_sec .sec_ttl::after {
    background-color: #b7b7b7;
  }

  .special_list {
    padding: 35px 0;
  }

  .special_list .special_list_item {
    width: 100%;
  }

  .special_list .special_list_item::after {
    content: "";
    display: block;
    clear: both;
  }

  .special_list .special_list_item .imgArea {
    position: relative;
    margin-bottom: 20px;
  }

  .special_list .special_list_item .imgArea img {
    width: 100%;
    display: block;
    height: auto;
  }

  .special_list .special_list_item .imgArea::after {
    content: "";
  }

  .special_list .special_list_item .imgArea::before {
    left: -10px;
  }

  .special_list .special_list_item .imgArea span {
    top: -15px;
    left: 23px;
  }

  .special_list .special_list_item dd {
    width: 100%;
    float: none;
  }

  .special_list .special_list_item dd h4 {
    font-size: 1.3em;
  }

  .special_list .special_list_item p {
    font-size: 0.9em;
  }

  .special_list .special_list_item .director {
    font-size: 1.1em;
  }
}
