@charset "utf-8";

html, body {
  overflow-x: hidden;
  margin: 0;
  line-height: 1.6;
  font-family: Futura, Century Gothic, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;;
}

body[data-aos-delay='8000'] [data-aos],
[data-aos][data-aos][data-aos-delay='8000'] {
  -webkit-transition-delay: 8000ms;
          transition-delay: 8000ms;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

p {
  margin: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

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

}

/*------------
  common
------------*/

.container {
  position: relative;
  width: 90%;
  max-width: 1110px;
  margin: 0 auto;
}
.iframe-container {
  position: relative;
  width: 100%;
  max-width: 665px;
  height: 600px;
}
.iframe-container iframe {
  width: 800px!important;
  height: 700px!important;
  max-width: 100%;
  max-height: 100%;
}
.content-inner {
  position: relative;
  width: 980px;
  margin: 0 auto;
  padding-bottom: 80px;
}

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

.flex {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}

.wrapper {
  display: -webkit-box;
  display: flex;
  width: 100%;
}

.float-left {
  float: left;
}
.float-right {
  float: right;
}

.sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .container {
    width: 90%;
    max-width: 100%;
  }
  .content-inner {
    width: 90%;
  }
  .iframe-container {
    width: 100%;
    height: 450px;
    max-width: 100%;
  }
  .iframe-container iframe {
    width: 780px!important;
    height: 600px!important;
  }

  .flex {
    display: block;
  }

  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
}


/*------------
  header
------------*/

header {
  width: 100%;
  background: #f2f8ef;
}
header.top-header {
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: .5s;
  transition: .5s;
}
header.top-header.active {
  opacity: 1;
  -webkit-transition: .5s;
  transition: .5s;
}
header .header-inner {
  position: relative;
  width: 1170px;
  margin: 0 auto;
}
header .header-inner .flex {
  -webkit-box-pack: justify;
          justify-content: space-between;
}
header .header-inner nav {
  display: -webkit-box;
  display: flex;
}
header .header-inner nav a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  padding: 25px 15px;
}
header .header-inner nav a.sp {
  display: none;
}
header .header-inner nav a:hover,
header .header-inner nav a.active {
  color: #fff;
  background: #e84091;
}
header .header-inner .btn .button {
  max-width: 120px;
  margin-left: 25px;
  padding: 10px 15px;
  background: #fff;
  border: 1px solid #000;
  border-radius: 10px;
}

@media screen and (max-width: 768px) {
  header {
    padding: 15px 0;
  }
  header .header-inner {
    width: 100%;
  }
  header .header-inner .flex {
    display: -webkit-box;
    display: flex;
    width: 90%;
    margin: 0 auto;
  }
  header .header-inner nav {
    display: none;
    position: absolute;
    z-index: 999;
    top: 100%;
    left: 0;
    width: 100%;
    background: #f2f8ef;
    border-bottom: 1px solid #000;
  }
  header .header-inner nav a.sp {
    display: -webkit-box;
    display: flex;
  }
  header .header-inner nav a img {
    max-width: 60%;
  }
  header .header-inner .btn {
    display: none;
  }
  header .header-inner .menu-trigger,
  header .header-inner .menu-trigger span {
    display: inline-block;
    -webkit-transition: all .4s;
    transition: all .4s;
    box-sizing: border-box;
  }
  header .header-inner .menu-trigger {
    position: relative;
    width: 40px;
    height: 30px;
    cursor: pointer;
  }
  header .header-inner .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
  }
  header .header-inner .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  header .header-inner .menu-trigger span:nth-of-type(2) {
    top: 0;
    bottom: 0;
    margin: auto;
  }
  header .header-inner .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }
  header .header-inner .menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(13px) rotate(-315deg);
    transform: translateY(13px) rotate(-315deg);
  }
  header .header-inner .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  header .header-inner .menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-13px) rotate(315deg);
    transform: translateY(-13px) rotate(315deg);
  }
}

header .header-inner nav  {
  text-align: center;
}


/*------------
  footer
------------*/

footer {
  position: fixed;
  z-index: 9999;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 5px 0;
  background: #f2f8ef;
}
footer .flex {
  -webkit-box-pack: justify;
          justify-content: space-between;
}
footer .flex .sns {
  text-align: right;
  color: #6c7486;
}
footer .flex .sns a {
  padding-right: 25px;
}
footer small {
  display: block;
  margin-top: 5px;
  font-size: 12px;
  text-align: left;
}

@media screen and (max-width: 768px) {
  footer .flex .logo {
    margin-bottom: 20px;
    text-align: center;
  }
  footer .flex .sns {
    text-align: center;
  }
  footer .flex .sns a {
    padding: 0 10px;
  }


}


/*------------
  content
------------*/

/*
  top
------------*/

main {
  display: block;
  background: #395370;
}

#mv {
  position: relative;
}

#mv div {
  position: relative;
}

#mv .bg {
  width: 100%;
  height: auto;
}

#mv .night {
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
}
#mv .night.active {
  opacity: 1;
  -webkit-transition: 1s;
  transition: 1s;
}
#mv .night .title {
  position: absolute;
  top: 25vw;
  left: 0;
  right: 0;
  margin: auto;
  width: 55vw;
}
#mv .night .copy01 {
  position: absolute;
  top: 25vw;
  right: 5vw;
  width: 10vw;
}
#mv .night .copy02 {
  position: absolute;
  top: 25vw;
  left: 5vw;
  width: 5vw;
}
#mv .details {
  position: absolute;
  bottom: 3vw;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 95vw;
}

#mv .noon {
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: .5s;
  transition: .5s;
}
#mv .noon.active {
  opacity: 1;
  -webkit-transition: .5s;
  transition: .5s;
}
#mv .noon .title-noon {
  position: absolute;
  top: 5vw;
  left: 5vw;
  margin: auto;
  width: 50vw;
}
#mv .noon .copy-noon {
  position: absolute;
  top: 45vw;
  right: 10vw;
  width: 5vw;
}

#sns_ber {
    padding: 13px 0;
    background: #f2f8ef;
    margin:auto;
    text-align: center;
    color: #6c7486;
  }
#sns_ber a {
  padding: 0px 10px;
}


#emg {
  padding: 40px 40px;
  background: ;
}
#emg .title {
  width: 5%;
  font-size: 40px;
  font-weight: bold;
  color: #395370;
}
#emg .date {
  width: 5%;
  font-size: 22px;
  font-weight: bold;
  color: #e84091;
}
#emg .article {
  width: 100%;
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;  

}



#emg .special-box .street-table {
  width: 80%;
  margin: 0px auto 150px;
  font-size: 14px;
  border: 2px solid #fff;
}
#emg .special-box .street-table th,
#emg .special-box .street-table td {
  padding: 10px 0;
  text-align: center;
  border: 1px solid #fff;
  vertical-align: middle;
}


#emg .tc-title {
  margin-top:20px;
  width: 100%;
  color: #ffffff;
  font-size: 26px;
  font-weight: bold; 
  text-align: center;

}

#emg .tc {
  width: 100%;
  color: #ffffff;
  font-size: 18px;
  font-weight: bold; 
  padding: 0px 100px;
  margin-bottom: 50px;

}

 #emg .refund-title {
  margin-top:-70px;
  width: 100%;
  color: #ffffff;
  font-size: 26px;
  font-weight: bold; 
  text-align: center;	
  
}

#emg .refund {
  margin-top:70px;
  width: 100%;
  color: #ffffff;
  font-size: 18px;
  padding: 0px 100px;

}

#emg .refund-akaji {
  margin-top:0px;
  margin-bottom:50px;  
  width: 100%;
  color: red;
  font-size: 18px;
  padding: 0px 100px;

}



#emg .catalog {
  border: 1px solid #fff;
  color: #ffffff;
  font-size: 18px;
  padding: 10px 100px;
}




#highlight {
  background: url(../img/highlight.png) repeat-x left center;
}
#twitter {
  background: url(../img/twitter2.png) no-repeat center/contain;
}
#special {
  background: url(../img/special.png) repeat-x left center;
}
#about {
  background: url(../img/about.png) repeat-x left center;
}
.link .link-inner {
  position: relative;
  width: 100%;
  max-width: 980px;
  margin: 80px auto;
}
.link .flex {
  position: relative;
  z-index: 9;
  -webkit-box-align: start;
          align-items: flex-start;
}
.link .link-title {
  display: inline-block;
  position: relative;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  margin: 0 65px;
  font-size: 34px;
  font-weight: bold;
  color: #fff;
}
.link .link-title.sp {
  display: none;
}
.link .link-title:before {
  content: "";
  position: absolute;
  bottom: -160px;
  left: 5px;
  right: 0;
  margin: auto;
  width: 9px;
  height: 132px;
  background: url(../img/title_arrow.png) no-repeat center/contain;
}
.link .content {
  width: 665px;
  height: 665px;
}
.link .content .twitter-follow {
  color: #fff;
  font-weight: bold;
  margin-bottom: 5px;
}
.link .content .twitter-follow a {
  display: inline-block;
  margin-left: 20px;
  padding: 5px 30px;
  font-weight: normal;
  border: 1px solid #fff;
  border-radius: 25px;
}
.link .special,
.link .about {
  margin: 80px auto;
}
.link .over-content {
  position: relative;
  width: 920px;
  padding: 40px;
  background: #f2f8ef;
}
#special.link .over-content {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.link .over-content:before {
  content: "";
  position: absolute;
  top: 0;
  width: calc(50vw - 50%);
  height: 100%;
  background: #f2f8ef;
}
.link .over-content.right:before {
  left: 100%;
}
.link .over-content.left:before {
  right: 100%;
}

.link .over-content .special-content {
  display: inline-block;
  position: relative;
  width: 30%;
  margin-right: 5%;
  padding: 20px;
  background: #fff;
  border: 1px solid #000;
}
.link .over-content .special-content:nth-child(3n) {
  margin-right: 0;
}
.link .over-content .special-content:nth-child(n + 4) {
  margin-top: 25px;
}
.link .over-content .special-content.new:before {
  content: "NEW";
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  position: absolute;
  z-index: 99;
  top: -20px;
  right: -20px;
  width: 60px;
  height: 60px;
  font-weight: bold;
  color: #fff;
  background: #e84091;
  border: 2px solid #fff;
  border-radius: 100%;
}
.link .over-content .special-content .thumb {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 210px;
  padding: 0 20px;
  margin-bottom: 10px;
  border: 1px solid #000;
}

.link .over-content .special-content .thumb-sq {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 210px;
  padding: 0px;
  margin-bottom: 10px;
}

.link .over-content .special-content .thumb-sq img {
  width: 100%;
  height: auto;
  max-height: 100%;
}

.link .over-content .special-content .thumb img {
  width: 100%;
  height: auto;
  max-height: 90%;
}

.link .over-content dl {
  font-size: 18px;
  color: #395370;
}
.link .over-content dl div {
  padding: 20px 0;
  border-bottom: 1px solid #000;
}
.link .over-content dl dt {
  display: inline-block;
  width: 20%;
  margin-right: 5%;
  vertical-align: top;
}
.link .over-content dl dt + dd {
  display: inline-block;
  width: 74%;
}

#news {
  padding: 40px 0;
  background: #f2f8ef;
}
#news .title {
  width: 15%;
  font-size: 40px;
  font-weight: bold;
  color: #395370;
}
#news .date {
  width: 15%;
  font-size: 22px;
  font-weight: bold;
  color: #e84091;
}
#news .article {
  width: 60%;
}

#banner {
  margin: 60px auto;
  width: 100%;

}
#banner .flex {
  -webkit-box-pack: justify;
          justify-content: space-between;
}
#banner .flex div {
  margin: 0px auto;
  width: 100%;
}
.pointer {
  cursor: pointer;
}
.modalArea {
  display: none;
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modalBg {
  width: 100%;
  height: 100%;
  background-color:transparent;
}

.modalWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
  width: 100%;
  max-width: 500px;
  padding: 0;
  background-color: #fff;
}

.closeModal {
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  cursor: pointer;
}

#modal-content{
	width:50%;
	margin:1.5em auto 0;
	padding:10px 20px;
	border:2px solid #aaa;
	background:#fff;
	z-index:2;
}

.modal-p{
	margin-top:1em;
}

.modal-p:first-child{
	margin-top:0;
}

.button-link{
	color:#00f;
	text-decoration:underline;
}

.button-link:hover{
	cursor:pointer;
	color:#f00;
}


#access .map {
  width: 70%;
  padding-left: 20px;
  padding-bottom: 20px;
}
#access .route {
  margin-bottom: 30px;
  color: #000;
  line-height: 1.6;
}

#googlemap {
  margin: 80px auto 0;
  padding-bottom: 80px;
}
#googlemap p {
  margin-top: 30px;
  font-size: 18px;
  color: #fff;
}

@media screen and (max-width: 768px) {
	
    #emg .special-box .table-scroll {

    width: 100%
  }
	
   #emg .special-box .street-table {
    margin: 0px auto 5px;
    width: 100%;
    font-size: 12px;

  }
  
  #emg .tc-title {
  margin-top:-30px;
  
}
  
  #emg .tc {
  padding: 0px 0px;

}

  #emg .refund-title {
  margin-top:-0px;
  
}
 #emg .refund {
  padding: 0px 0px;
}

#emg .refund-akaji {
  padding: 0px 0px;
}

#emg .catalog {
  padding: 10px 10px;
}


	
  .link .link-inner {
    width: 100%;
    margin: 30px auto;
  }



  .link .content {
    width: 100%;
    height: auto;
    margin: 30px auto;
  }
  .link .link-title {
    display: block;
    margin: 20px auto;
    text-align: center;
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
  }
  .link .link-title.pc {
    display: none;
  }
  .link .link-title.sp {
    display: block;
  }
  .link .link-title:before {
    display: none;
  }

  .link .flex {
    float: none;
  }
  .link .special,
  .link .about,
  .link .access {
    margin: 30px auto;
  }
  .link .over-content {
    display: block;
    width: 100%;
  }
  #special.link .over-content {
    display: block;
  }
  .link .over-content:before {
    display: none;
  }


    .link .over-content .special-content .thumb-sq {
    padding: 0 20px;
    border: 1px solid #000;
  }

  .link .over-content .special-content .thumb-sq img {
    max-height:95%;
    width: auto;
  }

  .link .over-content .special-content .thumb img {
    max-height:95%;
    width: auto;
    max-width:100%;
  }
  .link .over-content dl dt {
    width: 100%;
    margin-bottom: 10px;
  }
  .link .over-content dl dt + dd {
    width: 100%;
  }

  .link .over-content .special-content {
    width: 100%;
    margin-bottom: 25px;
  }

  #news .title,
  #news .date {
    width: 100%;
    margin-bottom: 10px;
  }
  #news .article {
    display: inline-block;
    width: 80%;
  }
  #news .arrow {
    display: inline-block;
    width: 15%;
  }

  #banner .flex div {
    width: 100%;
    margin-bottom: 20px;
    text-align: center;
  }

  #access .map {
    float: none;
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
  }
}

/*
  ticket
------------*/

#ticket-mv {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  min-height: 530px;
  font-size: 34px;
  color: #fff;
  background: url(../img/title02.png) no-repeat right center/contain;
}
#ticket-mv .content-inner {
  padding: 0;
}

#ticket .content-box {
  margin: 80px auto;
  background: #f2f8ef;
}
#ticket .content-box.mt {
  margin-top: 30px;
}
#ticket .content-box.mb {
  margin-bottom: 30px;
}
#ticket .content-box .box-title {
  padding: 15px 0;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  background: #cdceda;
  border-bottom: 1px solid #7d7d7d;
}

#ticket .content-box .table {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
#ticket .content-box .table .row {
  display: -webkit-box;
  display: flex;
  border-bottom: 1px solid #7d7d7d;
}
#ticket .content-box .table .row.table-title {
  background: #cdceda;
}
#ticket .content-box .table .row.no-align {
}
#ticket .content-box .table .row .title {
  width: 25%;
  padding: 25px 0;
  border-right: 1px solid #7d7d7d;
}
#ticket .content-box .table .row .title.day {
  background: #395370;
}
#ticket .content-box .table .row .cell {
  width: 75%;
  padding: 25px 0;
}
#ticket .content-box .table .row .cell.half {
  width: 37.5%;
}
#ticket .content-box .table .row .cell.half:last-child {
  border-left: 1px solid #7d7d7d;
}
#ticket .content-box .table .row .image {
  width: 30%;
  border-right: 1px solid #7d7d7d;
}
#ticket .content-box .table .row .text {
  display: -webkit-box;
  display: flex;
  -webkit-box-flex: 0;
          flex: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: justify;
          justify-content: space-between;
  position: relative;
  width: 70%;
  padding: 20px 0 0;
  font-size: 18px;
  font-weight: normal;
  text-align: left;
}
#ticket .content-box .table .row.right-image .image {
  width: 40%;
  padding: 80px 5%;
  background: #fff;
  border-left: 1px solid #7d7d7d;
}
#ticket .content-box .table .row.right-image .text {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: justify;
          justify-content: space-between;
  position: relative;
  width: 60%;
  padding: 20px 0 0;
  font-size: 18px;
  font-weight: normal;
  text-align: left;
}


#ticket .content-box .table .row.right-image-tour .text {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: justify;
          justify-content: space-between;
  position: relative;
  width: 50%;
  padding: 20px 0 0;
  font-size: 18px;
  font-weight: normal;
  text-align: left;
}

#ticket .content-box .table .row.right-image-tour .tour-right {
  width: 50%;
  padding: 20px;
  border-left: 1px solid #7d7d7d;
  font-size: 18px;
  font-weight: normal;
  text-align: left;
}




#ticket .content-box .table .row .text div p {
  padding: 0 20px;
}
#ticket .content-box .table .row .text .list {
  line-height: 3;
}
#ticket .content-box .table .row .text .price {
  width: 100%;
  padding: 15px 0;
  text-align: center;
  border-top: 1px solid #7d7d7d;
}

#ticket .content-box .table .row .text .price-yume {
  width: 100%;
  padding: 15px 20px;
  text-align: left;
  border-top: 1px solid #7d7d7d;
}

#ticket .content-box .col {
  padding: 30px 20px;
  border-bottom: 1px solid #7d7d7d;
}
#ticket .content-box .col.center {
  text-align: center;
}
#ticket .content-box .col .list {
  line-height: 3;
}

#ticket .content-box-sold {
  opacity: 0.3;
}

#ticket .content-box-sl {
  opacity: 1;
}


#ticket .caution-box {
  margin: 0 auto 80px;
  padding: 0 40px;
  font-size: 18px;
  color: #fff;
}

#ticket .underline {
  position: relative;
  margin-bottom: 30px;
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  color: #fff;
}
#ticket .underline:before {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 0;
  right: 0;
  margin: auto;
  width: 40px;
  height: 4px;
  background: #fff;
}

#ticket .image-caution {
  font-size: 14px;
  font-weight: normal;
  text-align: left;
}

/*
  table
*/

table.sell {
  width: 100%;
}
table.sell tr {
  width: 100%;
}
table.sell tr th {
  padding: 20px;
  font-weight: normal;
  background: #cdceda;
  border-bottom: 1px solid #7d7d7d;
  border-right: 1px solid #7d7d7d;
}
table.sell tr th:last-child {
  border-right: none;
}
table.sell tr td {
  padding: 20px;
  background: #f2f8ef;
  border-bottom: 1px solid #7d7d7d;
  border-right: 1px solid #7d7d7d;
  text-align: center;
  vertical-align: middle;
}
table.sell tr td:last-child {
  border-right: none;
}
table.sell tr .playguide,
table.sell tr .reserve {
  width: 25%;
}
table.sell tr td.reserve {
  text-align: left;
}
table.sell tr .url {
  width: 50%;
}
table.sell tr .playguide img {
  width: 80%;
}

@media screen and (max-width: 768px) {
  #ticket-mv {
    padding: 20px 0;
    min-height: 1px;
    text-align: center;
    background: transparent;
  }

  #ticket .content-box {
    margin: 30px auto;
  }
  #ticket .content-box.mu .table .row {
    flex-wrap: wrap;
  }
  #ticket .content-box.mu .table .row .title {
    width: 40%;
  }
  #ticket .content-box.mu .table.half .row .title {
    width: 100%;
    border-bottom: 1px solid #7d7d7d;
  }
  #ticket .content-box.mu .table .row .cell {
    width: 60%;
  }
  #ticket .content-box.mu .table.half .row .cell {
    width: 50%;
  }
  #ticket .content-box.mu .table .row .image {
    width: 100%;
    text-align: center;
    border-right: none;
  }
  #ticket .content-box.mu .table .row .text {
    width: 100%;
  }
  #ticket .content-box.mu .table .row.right-image .image {
    width: 100%;
  }
  #ticket .content-box.mu .table .row.right-image .text {
    width: 100%;
  }
  
   #ticket .content-box.mu .table .row.right-image-tour .text {
    width: 100%;
    border-left: 1px solid #7d7d7d;
    border-bottom: 1px solid #7d7d7d;
  }
  #ticket .content-box.mu .table .row.right-image-tour .tour-right  {
    width: 100%;
  }

  /*
    table
  */


  #ticket .caution-box {
    padding: 0;
  }

}

@media screen and (max-width: 768px) {
    #ticket .mb .playguide {
      font-size: 9px;
      padding: 7px;
    }
  #ticket .mb .reserve {
    font-size: 9px;
    padding: 10px;
  }
  #ticket .mb .url {
    font-size: 9px;
        padding: 10px;
  }
}



/*
  map
------------*/

#map-mv {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  min-height: 530px;
  font-size: 34px;
  color: #fff;
  background: url(../img/title01.png) no-repeat right center/contain;
}
#map-mv .content-inner {
  padding: 0;
}

#map .caution-box {
  width: 540px;
  margin: 80px auto 0;
  font-size: 18px;
  text-align: center;
  color: #fff;
}

#map .click-map {
  padding: 80px 0 40px;
  text-align: center;
  background: url(../img/map_bg.png) no-repeat center/cover;
}

#map .click-map img {
  width: 75vw;
  height: auto;
}

#map .map-banner img {
    position: relative;
    top: 50px;
    left: 30%;
    max-width:600px;
    padding-bottom: 40px;
}



@media screen and (max-width: 768px) {
  #map-mv {
    padding: 20px 0;
    min-height: 1px;
    text-align: center;
    background: transparent;
  }

  #map .caution-box {
    width: 100%;
    margin: 40px auto 0;
  }

  #map .click-map {
    overflow-x: scroll;
    width: 100%;
    padding: 40px 0;
  }

  #map .click-map img {
    max-width: 250vw;
    width: 250vw;
  }
  
  #map .map-banner img {
    position: relative;
    width:98%;
    top: 20px;
    left: 5px;
    padding-bottom: 30px;    
    

 }
}

/*
  goods
------------*/

#goods-mv {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  min-height: 530px;
  font-size: 34px;
  color: #fff;
  background: url(../img/title01.png) no-repeat right center/contain;
}
#goods-mv .content-inner {
  padding: 0;
}

#goods .caution-box {
  font-size: 16px;
  text-align: left;
  color: #fff;
}

@media screen and (max-width: 768px) {
  #goods-mv {
    padding: 20px 0;
    min-height: 1px;
    text-align: center;
    background: transparent;
  }

  #goods .caution-box {
    font-size: 16px;
  }
}


#goods .lead {
  margin: 0px auto;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  color: #fff;
}

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

  #goods .lead {
    margin: 0px auto;
    font-size: 24px;
  }
}



#goods .content-box {
  margin: 80px auto;
  background: #f2f8ef;
}
#goods .content-box .box-title {
  padding: 15px;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  background: #cdceda;
  border-bottom: 1px solid #7d7d7d;
}

#goods .content-box .box-title small {
font-size: 75%;
}

#goods .content-box .content {
  padding: 40px;
  font-size: 18px;
}
#goods .content-box .content small {
  font-size: 75%;
}
#goods .content-box .content .flex-start {
  -webkit-box-align: start;
          align-items: flex-start;
}
#goods .content-box .content .flex-end {
  -webkit-box-align: end;
          align-items: flex-end;
}
#goods .content-box .content .center {
  text-align: center;
}
#goods .content-box .content .center img {
  padding: 10px 0;
}

#goods .content-box .content .flex01 {
  margin-top: 40px;
}
#goods .content-box .content .image01 {
  width: 30%;
  margin-right: 5%;
}
#goods .content-box .content .text01 {
  width: 65%;
  font-size: 25px;
}
#goods .content-box .content .text01 small {
  font-size: 18px;
}

#goods .content-box .content .flex02 {
  -webkit-box-pack: justify;
          justify-content: space-between;
  margin-top: 40px;
}
#goods .content-box .content .flex02 div {
  width: 47%;
}
#goods .content-box .content .flex02 div p {
  margin-top: 10px;
  text-align: right;
}

#goods .content-box .content .flex03 {
  margin-top: 40px;
}
#goods .content-box .content .image03 {
  width: 15%;
  margin-right: 5%;
}
#goods .content-box .content .text03 {
  width: 80%;
  font-size: 16px;
}

#goods .content-box .content .flex04 {
  margin-top: 40px;
}
#goods .content-box .content .image04 {
  width: 15%;
  margin-left: 5%;
}
#goods .content-box .content .text04 {
  width: 80%;
  font-size: 16px;
}

#goods .content-box .content .flex05 {
  -webkit-box-pack: center;
          justify-content: center;
  margin-top: 40px;
}
#goods .content-box .content .flex05 div {
  width: 45%;
  margin: 0 10px;
}
#goods .content-box .content .text05 {
  width: 100%;
  font-size: 16px;
}

#goods .content-box .content .flex06 {
  -webkit-box-pack: justify;
          justify-content: space-between;
  margin-top: 40px;
}
#goods .content-box .content .flex06 div {
  width: 47%;
  text-align: center;
}
#goods .content-box .content .flex06 div p {
  margin-top: 10px;
  text-align: right;
}

@media screen and (max-width: 768px) {
  #goods-mv {
    padding: 20px 0;
    min-height: 1px;
    text-align: center;
    background: transparent;
  }

  #goods .content-box .box-title {
    padding: 15px 10px;
  }

  #goods .content-box .content .image01 {
    width: 100%;
    margin-bottom: 20px;
    text-align: center;
  }
  #goods .content-box .content .text01 {
    width: 100%;
  }

  #goods .content-box .content .flex02 div {
    width: 100%;
    margin-bottom: 20px;
  }

  #goods .content-box .content .image03 {
    width: 100%;
    margin: 0 0 20px;
    text-align: center;
  }
  #goods .content-box .content .text03 {
    width: 100%;
  }

  #goods .content-box .content .image04 {
    width: 100%;
    margin-bottom: 20px;
    text-align: center;
  }
  #goods .content-box .content .text04 {
    width: 100%;
  }

  #goods .content-box .content .flex05 div {
    width: 100%;
    margin: 0 0 20px;
  }

  #goods .content-box .content .flex06 div {
    width: 100%;
    margin-bottom: 20px;
  }
}

#goods .center {
  text-align: center;
}

/*
  point
------------*/

#point-mv {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  min-height: 530px;
  font-size: 34px;
  color: #fff;
  background: url(../img/title02.png) no-repeat right center/contain;
}
#point-mv .content-inner {
  padding: 0;
}

#point .content-box {
  margin: 80px auto;
  background: #f2f8ef;
}
#point .content-box .box-title {
  padding: 15px 0;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  background: #cdceda;
  border-bottom: 1px solid #7d7d7d;
}
#point .content-box .content {
  padding: 40px;
  font-size: 18px;
}
#point .content-box .content small {
  font-size: 75%;
}
#point .content-box .content .flex-start {
  -webkit-box-align: start;
          align-items: flex-start;
}
#point .content-box .content .flex-end {
  -webkit-box-align: end;
          align-items: flex-end;
}
#point .content-box .content .center {
  text-align: center;
}
#point .content-box .content .center img {
  padding: 10px 0;
}

#point .content-box .content .flex01 {
  margin-top: 40px;
}
#point .content-box .content .image01 {
  width: 30%;
  margin-right: 5%;
}
#point .content-box .content .text01 {
  width: 65%;
  font-size: 25px;
}
#point .content-box .content .text01 small {
  font-size: 18px;
}

#point .content-box .content .flex02 {
  -webkit-box-pack: justify;
          justify-content: space-between;
  margin-top: 40px;
}
#point .content-box .content .flex02 div {
  width: 47%;
}
#point .content-box .content .flex02 div p {
  margin-top: 10px;
  text-align: right;
}

#point .content-box .content .flex03 {
  margin-top: 40px;
}
#point .content-box .content .image03 {
  width: 15%;
  margin-right: 5%;
}
#point .content-box .content .text03 {
  width: 80%;
  font-size: 16px;
}

#point .content-box .content .flex04 {
  margin-top: 40px;
}
#point .content-box .content .image04 {
  width: 15%;
  margin-left: 5%;
}
#point .content-box .content .text04 {
  width: 80%;
  font-size: 16px;
}

#point .content-box .content .flex05 {
  -webkit-box-pack: center;
          justify-content: center;
  margin-top: 40px;
}
#point .content-box .content .flex05 div {
  width: 45%;
  margin: 0 10px;
}
#point .content-box .content .text05 {
  width: 100%;
  font-size: 16px;
}

#point .content-box .content .flex06 {
  -webkit-box-pack: justify;
          justify-content: space-between;
  margin-top: 40px;
}
#point .content-box .content .flex06 div {
  width: 47%;
  text-align: center;
}
#point .content-box .content .flex06 div p {
  margin-top: 10px;
  text-align: right;
}

@media screen and (max-width: 768px) {
  #point-mv {
    padding: 20px 0;
    min-height: 1px;
    text-align: center;
    background: transparent;
  }

  #point .content-box .box-title {
    padding: 15px 10px;
  }

  #point .content-box .content .image01 {
    width: 100%;
    margin-bottom: 20px;
    text-align: center;
  }
  #point .content-box .content .text01 {
    width: 100%;
  }

  #point .content-box .content .flex02 div {
    width: 100%;
    margin-bottom: 20px;
  }

  #point .content-box .content .image03 {
    width: 100%;
    margin: 0 0 20px;
    text-align: center;
  }
  #point .content-box .content .text03 {
    width: 100%;
  }

  #point .content-box .content .image04 {
    width: 100%;
    margin-bottom: 20px;
    text-align: center;
  }
  #point .content-box .content .text04 {
    width: 100%;
  }

  #point .content-box .content .flex05 div {
    width: 100%;
    margin: 0 0 20px;
  }

  #point .content-box .content .flex06 div {
    width: 100%;
    margin-bottom: 20px;
  }
}

/*
  english
------------*/

#english-mv {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  min-height: 530px;
  font-size: 34px;
  color: #fff;
  background: url(../img/title02.png) no-repeat right center/contain;
}
#english .content-inner {
  padding: 0;
}

#english .flex {
  position: relative;
  z-index: 9;
  -webkit-box-align: start;
          align-items: flex-start;
}
#english .link-title {
  display: inline-block;
  position: relative;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  margin: 0 65px;
  font-size: 34px;
  font-weight: bold;
  color: #fff;
}
#english .link-title.sp {
  display: none;
}
#english .link-title:before {
  content: "";
  position: absolute;
  bottom: -160px;
  left: 5px;
  right: 0;
  margin: auto;
  width: 9px;
  height: 132px;
  background: url(../img/title_arrow.png) no-repeat center/contain;
}
#english .about {
  margin: 80px auto 0;
  padding-bottom: 80px;
}
#english .over-content {
  position: relative;
  width: 920px;
  padding: 40px;
  background: #f2f8ef;
}
#english .over-content:before {
  content: "";
  position: absolute;
  top: 0;
  width: calc(50vw - 50%);
  height: 100%;
  background: #f2f8ef;
}
#english .over-content.left:before {
  right: 100%;
}

#english .over-content dl {
  font-size: 18px;
  color: #395370;
}
#english .over-content dl div {
  padding: 20px 0;
  border-bottom: 1px solid #000;
}
#english .over-content dl dt {
  display: inline-block;
  width: 20%;
  margin-right: 5%;
  vertical-align: top;
}
#english .over-content dl dt + dd {
  display: inline-block;
  width: 74%;
}

#english p {
  margin-top: 30px;
  padding-bottom: 80px;
  font-size: 18px;
  color: #fff;
}

@media screen and (max-width: 768px) {
  #english-mv {
    padding: 20px 0;
    min-height: 1px;
    text-align: center;
    background: transparent;
  }

  #english .link-title {
    display: block;
    margin: 20px auto;
    padding-bottom: 0;
    text-align: center;
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
  }
  #english .link-title.pc {
    display: none;
  }
  #english .link-title.sp {
    display: block;
  }
  #english .link-title:before {
    display: none;
  }

  #english .about {
    margin: 30px auto;
  }
  #english .over-content {
    width: 100%;
  }
  #english .over-content:before {
    display: none;
  }
  #english .over-content dl dt {
    width: 100%;
    margin-bottom: 10px;
  }
  #english .over-content dl dt + dd {
    width: 100%;
  }
}

/*
  special
------------*/

#special-mv {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  min-height: 530px;
  font-size: 34px;
  color: #fff;
  background: url(../img/title02.png) no-repeat right center/contain;
}
#special-mv .content-inner {
  padding: 0;
}

#special-page .special-box {
  padding: 40px 0;
  font-size: 21px;
  color: #fff;
}
#special-page .special-box a {
  text-decoration: underline;
}
#special-page .special-box .center {
  text-align: center;
}
#special-page .special-box .title {
  margin-bottom: 25px;
  font-size: 34px;
  text-align: center;
  font-weight: bold;
}

#special-page .special-box .subtitle {
  font-size: 20px;
  text-align: center;

}

#special-page .special-box .head-tour{
  font-size: 25px;
  font-weight: bold;

}



#special-page .special-box .image-box {
  width: 60%;
  margin: 25px auto;
}
#special-page .special-box .image-box p {
  font-size: 14px;
  text-align: right;
}
#special-page .special-box small {
  display: block;
  width: 60%;
  margin: 0 auto;
  font-size: 16px;
}
#special-page .special-box small.caution {
  width: 100%;
  margin-top: 30px;
}
#special-page .special-box small.caution.red {
  color: #ff0000;
}
#special-page .special-box p.margin {
  margin-bottom: 20px;
}

#special-page .special-box .point {
  margin-top: 35px;
  padding: 20px;
  border: 7px double #fff;
}
#special-page .special-box .point .point-title {
  margin-bottom: 5px;
  font-size: 24px;
  font-weight: bold;
}
#special-page .special-box .point .point-sub {
  margin-bottom: 5px;
  text-decoration: underline;
}

#special-page .special-box .profile {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  margin-top: 35px;
}
#special-page .special-box .profile .image {
  width: 25%;
  margin-right: 5%;
}
#special-page .special-box .profile .text {
  width: 70%;
}

#special-page .special-box .onair {
  margin: 35px auto;
  padding: 20px;
  border: 4px double #fff;
}
#special-page .special-box .onair .onair-title {
  margin-bottom: 5px;
  font-size: 24px;
  font-weight: bold;
}
#special-page .special-box .onair .onair-title:nth-child(3) {
  margin-top: 25px;
}

#special-page .special-box .border {
  margin: 25px auto;
  padding: 20px;
  text-align: center;
  border: 4px double #fff;
}
#special-page .special-box .border .title {
  margin-bottom: 0;
  font-size: 30px;
}
#special-page .special-box .border .border-title {
  margin-bottom: 5px;
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  border-bottom: 1px solid #fff;
}
#special-page .special-box .border .border-sub {
  font-size: 24px;
}

#special-page .special-box .stage {
  margin: 25px auto;
  text-align: center;
}
#special-page .special-box .stage .stage-title {
  display: inline-block;
  padding: 0 20px;
  font-size: 24px;
  font-weight: bold;
}
#special-page .special-box .stage ul {
  margin: 20px auto;
  counter-reset: data-num;
}
#special-page .special-box .stage ul li {
  position: relative;
  padding-left: 30px;
  font-size: 18px;
  text-align: left;
  list-style: none;
  counter-increment: data-num;
}
#special-page .special-box .stage ul li:before {
  content: counter(data-num);
  position: absolute;
  top: 5px;
  left: 0;
  width: 20px;
  height: 20px;
  font-size: 13px;
  text-align: center;
  background: #000;
  border-radius: 100%;
  line-height: 19px;
}
#special-page .special-box .stage .stage-stamp {
  width: 60%;
  margin: 25px auto;
  padding: 20px;
  text-align: left;
  border: 1px solid #fff;
}
#special-page .special-box .stage .stage-station {
  display: flex;
  align-items: flex-start;
  margin: 5px auto;
  font-size: 16px;
}
#special-page .special-box .stage .stage-station .station-line {
  width: 25%;
  text-align: center;
  border: 1px solid #fff;
}
#special-page .special-box .stage .stage-station .station-name {
  width: 72%;
  margin-left: 3%;
}
#special-page .special-box .stage .stage-station .station-name p {
  display: inline-block;
  width: 55%;
}
#special-page .special-box .stage .stage-station .station-name p:nth-child(2n) {
  width: 42%;
}
#special-page .special-box .stage span {
  font-size: 16px;
}

#special-page .special-box .prize {
  margin: 30px auto;
  padding: 25px;
  border: 1px dashed #fff;
  border-radius: 25px;
}
#special-page .special-box .prize .prize-title {
  text-align: center;
  text-decoration: underline;
}
#special-page .special-box .prize .prize-caution {
  margin-top: 15px;
  font-size: 16px;
}

#special-page .special-box .street {
  display: flex;
  justify-content: space-between;
  margin: 30px auto;
}
#special-page .special-box .street-box {
  padding: 20px 30px;
  text-align: center;
  border: 1px dashed #fff;
}
#special-page .special-box .street-box.roppongi {
  width: 33%;
}
#special-page .special-box .street-box.azabu {
  width: 66%;
}
#special-page .special-box .street-box.azabu img {
  width: 48%;
  padding: 0 10px;
}
#special-page .special-box .street-box p {
  margin-bottom: 15px;
}
#special-page .special-box .street-caution {
  font-size: 16px;
}
#special-page .special-box .street-table {
  width: 100%;
  margin: 25px auto 5px;
  font-size: 14px;
  border: 2px solid #fff;
}
#special-page .special-box .street-table th,
#special-page .special-box .street-table td {
  padding: 10px 0;
  text-align: center;
  border: 1px solid #fff;
  vertical-align: middle;
}
#special-page .special-box .table-caution {
  font-size: 15px;
  text-align: right;
}

#special-page .special-box .menu-border {
  width: 60%;
  margin: 25px auto;
  padding: 20px;
  text-align: left;
  font-size: 16px;
  border: 1px solid #fff;
  line-height: 1.8;
}
#special-page .special-box .menu-border.w-100 {
  width: 100%;
}
#special-page .special-box .menu-border span {
  margin-right: 10px;
  padding: 4px;
  border: 1px solid #fff;
}

#special-page .special-box .photo-border {
  width: 70%;
  margin: 25px auto;
  padding: 20px;
  text-align: left;
  font-size: 16px;
  border: 1px solid #fff;
  line-height: 1.8;
}

#special-page .special-box .photo-caution {

  margin: 0 auto;
  font-size: 16px;
}

#special-page .special-box .menu-title {
  margin: 40px auto;
  padding: 15px 0;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  color: #e84091;
  background: #f2f8ef;
}
#special-page .special-box .menu-cat {
  margin: 25px auto;
}
#special-page .special-box .menu-cat small {
  width: 100%;
  text-align: left;
  color: #ff0000;
}
#special-page .special-box .menu-cat .cat-border {
  margin-right: 10px;
  padding: 4px;
  border: 1px solid #fff;
}
#special-page .special-box .menu-cat .cat-title {
  margin-bottom: 20px;
  font-weight: bold;
}
#special-page .special-box .menu-cat .cat-box {
  display: flex;
  justify-content: space-between;
  margin: 30px auto;
  font-size: 16px;
  line-height: 2;
}
#special-page .special-box .menu-cat .cat-box .menu-image {
  order: 2;
  width: 45%;
  text-align: center;
}
#special-page .special-box .menu-cat .cat-box .menu-image img {
  max-height: 400px;
}
#special-page .special-box .menu-cat .cat-box .menu-image .menu-caption {
  font-size: 12px;
}
#special-page .special-box .menu-cat .cat-box .menu-info {
  order: 1;
  width: 50%;
}
#special-page .special-box .menu-cat .cat-box .menu-info.w-100 {
  width: 100%;
}
#special-page .special-box .package {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
#special-page .special-box .package div {
  margin: 0 15px;
  text-align: center;
}
#special-page .special-box .package div img {
  max-height: 160px;
}


#special-page .special-box .event-date-border {
  width: 70%;
  margin: 25px auto;
  padding: 20px;
  text-align: left;
  font-size: 20px;
  border: 1px solid #fff;
  line-height: 1.8;
}

#special-page .special-box .event-button {
    position: relative;	
　display:block;
    width:200px;
    font-size:20px;
    text-decoration:none;
    text-align:center;
    padding:30px;
    margin: 10px;
    margin-top: 30px;    
    color:#fff;
    background-color:#ff5dcc;
    border-radius:5px;
    box-shadow:2px 2px 2px #555;
    
    

}

#special-page .special-box .event-button2 {
    position: relative;	
　display:block;
    width:200px;
    font-size:20px;
    text-decoration:none;
    text-align:center;
    padding:30px;
    margin: 10px;
    margin-top: 30px;    
    color:#fff;
    background-color:#ff5dcc;
    border-radius:5px;
    box-shadow:2px 2px 2px #555;
    
    

}



@media screen and (max-width: 768px) {
  #special-mv {
    padding: 20px 0;
    min-height: 1px;
    text-align: center;
    background: transparent;
  }

  #special-page .special-box {
    padding-bottom: 20px;
  }
  #special-page .special-box .image-box {
    width: 100%;
  }
  #special-page .special-box small {
    width: 100%;
  }

  #special-page .special-box .profile {
    display: block;
  }
  #special-page .special-box .profile .image {
    width: 100%;
    margin: 0 auto 25px;
  }
  #special-page .special-box .profile .text {
    width: 100%;
  }

  #special-page .special-box .stage .stage-stamp {
    width: 100%;
  }
  #special-page .special-box .stage .stage-station {
    display: block;
  }
  #special-page .special-box .stage .stage-station .station-line {
    width: 40%;
  }
  #special-page .special-box .stage .stage-station .station-name {
    width: 100%;
    margin: 5px auto;
  }
  #special-page .special-box .stage .stage-station .station-name p {
    width: 100%;
  }
  #special-page .special-box .stage .stage-station .station-name p:nth-child(2n) {
    width: 100%;
    margin-bottom: 5px;
  }

  #special-page .special-box .street {
    display: block;
  }
  #special-page .special-box .street-box.roppongi,
  #special-page .special-box .street-box.azabu {
    width: 100%;
    margin-bottom: 15px;
  }
  #special-page .special-box .street-box.azabu img {
    width: 100%;
  }
  #special-page .special-box .street-box.azabu img + img {
    margin-top: 15px;
  }
  #special-page .special-box .table-scroll {
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    width: 100%
  }
  #special-page .special-box .street-table {
    width: 980px;
  }

  #special-page .special-box .menu-border {
    width: 100%;
  }

  #special-page .special-box .photo-border {
  width: 100%;
}

  #special-page .special-box .menu-cat .cat-box {
    display: block;
  }
  #special-page .special-box .menu-cat .cat-box .menu-image {
    width: 100%;
    margin-bottom: 10px;
  }
  #special-page .special-box .menu-cat .cat-box .menu-info {
    width: 100%;
  }
  #special-page .special-box .package {
    display: block;
  }
  #special-page .special-box .package div + div {
    margin-top: 10px;
  }
  
   #special-page .special-box .event-button {
    display:block;
    position: relative;
    padding:30px;
    margin-top: 30px;
    margin-bottom: -60px;        
    top: -50px;
    }
    
     #special-page .special-box .event-button2 {
    display:block;
    margin-bottom: -60px;   

    }
    
    
}

#special-page .special-banner img {
    position: relative;
    top: 50px;
    left: 30%;
    width: auto;
    max-width:600px;
    padding-bottom: 40px;
}

 #special-page .special-box .event-date-border {
  width: 100%;
  margin-bottom: 0px auto;
  padding: 20px;
}





@media screen and (max-width: 768px) {
  #special-page .special-banner img {
    position: relative;
    width:98%;
    top: 20px;
    left: 5px;
    padding-bottom: 30px;       
  }
}

#special-page .special-banner07 img {
    position: relative;
    top: 50px;
    left: 20%;
    max-width:600px;
    padding-bottom: 40px;
}

@media screen and (max-width: 768px) {
  #special-page .special-banner07 img {
    position: relative;
    width:98%;
    top: 20px;
    left: 5px;
    padding-bottom: 30px;       
  }
}


#special-page .special-box .snsphoto-title {
  margin: 40px auto;
  padding: 15px 0;
  font-size: 34px;
  font-weight: bold;
  text-align: center;
  color: #e84091;
  background: #f2f8ef;
}

#special-page .special-box .snsphoto-subtitle {
  margin: 40px auto;
  padding: 15px 0;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  color: #e84091;
  background: #f2f8ef;
}

#special-page .special-box .event-snsphoto-border {
  width: 100%;
  margin: 25px auto;
  padding: 30px;
  text-align: left;
  font-size: 20px;
  border: 5px solid #e84091;
  line-height: 1.8;
  background: #f2f8ef;
  color: #000000;
}

#special-page .special-box .sns-sample {
    display: inline-block;    
    padding:  25px;
    padding-bottom:  5px;            
    height: 355px; 

}
#special-page .special-box .snsphoto-caution {
    padding-bottom:  35px;
    font-size:14px;   

}



/*
  news
------------*/

#news-mv {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  min-height: 530px;
  font-size: 34px;
  color: #fff;
  background: url(../img/title02.png) no-repeat right center/contain;
}
#news-mv .content-inner {
  padding: 0;
}

#news-page .news-box {
  padding: 80px 0;
  font-size: 18px;
  color: #fff;
}
#news-page .news-box .center {
  text-align: center;
}
#news-page .news-box .date {
  text-align: center;
  
}

#news-page .news-box .prize {
  text-align: center;
  font-size: 24px;
  margin-bottom: -20px;

}

#news-page .news-box .prize-caption {
  width: 60%;
  margin: 25px auto;
}

#news-page .news-box .title {
  margin-bottom: 25px;
  font-size: 34px;
  font-weight: bold;
  text-align: center;
}
#news-page .news-box .image-box {
  width: 60%;
  margin: 25px auto;
  text-align: center;
}
#news-page .news-box .image-box p {
  font-size: 14px;
  text-align: right;
}
#news-page .news-box .image-flex {
  display: flex;
  justify-content: space-between;
  width: 60%;
  margin: 25px auto;
}

#news-page .news-box .image-flex .preview{
  width: 48%;
}

#news-page .news-box .image-flex .human {
  width: 38%;
}
#news-page .news-box .image-flex .media {
  width: 60%;
}
#news-page .news-box .image-flex .media .media-info {
  margin-top: 10px;
  font-size: 16px;
}
#news-page .news-box .news-text {
  margin-bottom: 25px;
  text-indent: 1em;
}
#news-page .news-box .news-text span,
#news-page .news-box a {
  text-decoration: underline;
}
#news-page .news-box .border-box {
  margin: 25px auto;
  padding: 20px;
  border: 1px solid #fff;
}
#news-page .news-box .border-box .list {
  position: relative;
  padding-left: 40px;
  counter-increment: num;
}
#news-page .news-box .border-box .list:before {
  content: '（'counter(num)'）';
  position: absolute;
  left: 0;
}
#news-page .news-box .border-box .caution {
  font-size: 14px;
}
#news-page .news-box .border-box .caution-small {
  margin-bottom: 20px;
  padding-left: 40px;
  font-size: 12px;
}

@media screen and (max-width: 768px) {
  #news-mv {
    padding: 20px 0;
    min-height: 1px;
    text-align: center;
    background: transparent;
  }

  #news-page .news-box {
    padding: 0;
  }
  #news-page .news-box .image-box {
    width: 100%;
  }
  #news-page .news-box .image-flex {
    display: block;
    width: 100%;
  }

  #news-page .news-box .image-flex .preview{
  width: 100%;
  margin: 0 auto 15px;
  }

  #news-page .news-box .image-flex .human {
    width: 60%;
    margin: 0 auto 15px;
  }
  #news-page .news-box .image-flex .media {
    width: 100%;
  }
  
  #news-page .news-box .prize-caption {
  width: 100%;
}
  
}

/*--  --*/

/*------------

------------*/

/*

------------*/
