@charset "UTF-8";
html, body, div, h1, h2, h3, h4, h5, h6, p, blockquote, q, pre, table, caption, colgroup, col, tbody, thead, tfoot, tr, th, td, ul, ol, li, dl, dt, dd, form, fieldset, legend, label, input, span, a, img, em, ins, del, cite, abbr, sup, sub, dfn, code, var, samp, kbd, object, script, noscript, style, iframe, embed, param, map, area, menu, hr, address, small, strong, i, b, article, aside, figure, footer, header, hgroup, nav, section, figcaption, time, video, audio, mark, ruby, rt, rp, bdo, source, canvas, details, summary, command, datalist, keygen, output, progress, meter {
  margin: 0;
  padding: 0;
  font-size: 100%;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
address, article, aside, figure, figcaption, footer, header, hgroup, hr, legend, menu, nav, section, summary { display: block;}
ul, ol { list-style-type: none;}

a img { border: none;}
img { vertical-align: top;}
[hidden] { display: none;}
mark { background: none;}
em { font-style: normal;}
input { opacity: 1;}

html { 
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
}
body { background-color: rgba(220,220,220,1.0); }

/* FONT FORMATT */
body {
   font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
   font-size: 15px;
	font-size: 1.5rem;
	line-height: 130%;
	color: #000;
}
h1 { font-size: 120%;}
p {
   line-height: 135%;
   margin: 0 0 7px 0;
}
p:last-child { margin: 0 0 0 0;}
a { color: #000;}
.mini { font-size: 70%;}
.large { font-size: 110%;}
.bold { font-weight: bold;}
.indent { padding-left: 1em; text-indent: -1em;}
.underline { text-decoration: underline;}

/* TABLE FORMATT */
table { border-collapse:collapse;}


/* WRAP */
#wrap { padding: 0 1em 1em 1em;}
/* WRAP SP */
@media screen and (max-width: 640px) {
#wrap { padding: 0 0 1em 0;}
}

/* 改行 */
@media screen and (min-width: 640px){	
  .br-pc { display:block; }
  .br-sp { display:none; }
}
@media screen and (max-width: 640px){	
  .br-pc { display:none; }
  .br-sp { display:block; }
}

/* TOP IMAGE */
#topimg , #topimg img {
    width: 100%;
    height: auto;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0;
}
/* パソコン閲覧class"pc"画像表示 */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマホ閲覧class"sp"画像表示 */
@media only screen and (max-width: 640px) {
.pc { display: none !important; }
.sp { display: block !important; }
}

/* 全体設定 */
.css-carousel-slider2 {
    width: 100%;
    overflow: hidden;
    position: relative;
}
.css-carousel-slider2 img {
    width: 100%;
    height: auto;
    vertical-align: top;
}

/* スライド設定 */
.css-carousel-slider2 .slide-wrap {
    width: 200%;
    position: absolute;
    display: flex;
    top: 0;
    left: 0;
    z-index: 0;
    animation: css-carousel-slider2 10s infinite;
    animation-delay: 1s;
}
.css-carousel-slider2 .slide-wrap-main {
    width: 100%;
    z-index: 1;
    animation: css-carousel-slider-main2 10s infinite;
    animation-delay: 1s;
}
.css-carousel-slider2 .slide {
    width: 100%;
}

/* スライダーアニメーションの設定 */
@keyframes css-carousel-slider2 {
    0% { transform: translateX(0); }

    40% { transform: translateX(calc(1 / 2 * -100%)); }
    50% { transform: translateX(calc(1 / 2 * -100%)); }

    90% { transform: translateX(calc(2 / 2 * -100%)); }
    100% { transform: translateX(calc(2 / 2 * -100%)); }
}

@keyframes css-carousel-slider-main2 {
    0% { transform: translateX(100%); }
    50% { transform: translateX(100%); }
    90% { transform: translateX(0%);}
}


/* online */  
#online {
    padding: 0.5em 1em;
    margin: 0 auto;
    background: -webkit-repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px,#e9f4ff 3px, #e9f4ff 7px);
    background: repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px,#e9f4ff 3px, #e9f4ff 7px);
    max-width: 1070px;
    text-align: center;
}
#online b { 
 font-size: 11px;
    margin: 0; 
    padding: 0;
}




/*スマホ用補正*/
@media screen and (max-width: 640px) {
#online {
   width: 96%;
   padding: 3px 2%;
}
#online div , #online div:first-child {
	font-size: 9px;
	font-size: 0.9rem;
}
} 



/* TOPICS */
#topicsback {
    padding-top: 1em;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}
#topics {
   background-color: ;
   width: 100%;
	margin: 0 0 30px 0;
	padding: 0;
	background-color: rgba(255,255,255,0.3);
   height: auto;
   max-height: 75px;
  overflow: auto;
}
#topics::-webkit-scrollbar{ width: 7px;}
#topics::-webkit-scrollbar-track{
  background: #fff;
  border: none;
  border-radius: 7px;
  box-shadow: inset 0 0 2px #777; 
}
#topics::-webkit-scrollbar-thumb{
  background: #aaa;
  border-radius: 7px;
  box-shadow: none;
}
.topibox {
   width: 98%;
   text-align: left;
	vertical-align: middle;
	display: table;
	padding: 3px 1%;
	border-top: 1px dotted #AAA;
}
.topibox:last-child { border-bottom: 1px dotted #AAA;}
.topibox div {
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 120%;
	display: table-cell;
	letter-spacing: normal;
}
.topibox div:first-child {
	font-size: 11px;
	font-size: 1.1rem;
	white-space: nowrap; 
	width: 6em;
	padding: 0 1em 0 0;
	letter-spacing: 0.1em;
}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
.topibox {
   width: 96%;
   padding: 3px 2%;
}
.topibox div , .topibox div:first-child {
	font-size: 9px;
	font-size: 0.9rem;
}
} 


/* TAB */
#tabrow {
   height: 90px;
   margin: 20px auto 0 auto;
   z-index: 10;/* #box"z-index:5;" */
   max-width: 1100px;
   display: -webkit-flex;
   display: flex;
}
#tabrow div {
   width: 50%;
   height: 100%;
}
#tabrow div a {
   width: 100%;
   height: 100%;
   font-size: 1.8rem;
   font-size: 18px;
   color: red;
   background-color: #f0f8ff;
   font-weight: bold;
   text-decoration: none;
   text-align: center;
    /* radius */
   border-top-left-radius : 0px;
   border-top-right-radius : 0px;
   -webkit-border-top-left-radius: 0px;  
   -webkit-border-top-right-radius: 0px;  
   -moz-border-radius-topleft: 0px;  
   -moz-border-radius-topright: 0px;
   /* box-shadow */
   box-shadow:0px -3px 10px 0px #DEDEDE inset;
   -moz-box-shadow:0px -3px 10px 0px #DEDEDE inset;
   -webkit-box-shadow:0px -3px 10px 0px #DEDEDE inset;
   z-index: 50;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
}
#tabrow div a span { display: inline-block;}
#tabrow div.selected a {
   font-size: 2.0rem;
   font-size: 20px;
   color: #73ce04;
   background-color: #95ccec;
   z-index: 100;
   box-shadow:none;
   -moz-box-shadow:none;
   -webkit-box-shadow:none;
}
#tabrow div a:hover { color: #333;}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
#tabrow { height: 50px;}
#tabrow div.selected a { font-size: 3vw;}
#tabrow div a { font-size: 2.5vw;}
}


/* EVENT TOP */
#EVENTtop {
   background-color: white;
   margin: 0 auto;
   padding: 30px 10px;
   max-width: 1080px;
}
p#E-title {
   font-size: 26px;
   font-size: 2.6rem;
   line-height: 150%;
   text-align: center;
   font-weight: bold;
   letter-spacing: normal;
}
p#P-text {
   width: 100%;
   font-size: 18px;
   font-size: 1.8rem;
   text-align: center;
   line-height: 150%;
   font-weight: bold;
   margin: 20px 0;
}
p#E-title span, p#P-text span { display: inline-block;}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
p#E-title { font-size: 21px; font-size: 2.1rem;}
p#P-text {
   font-size: 14px;
   font-size: 1.4rem;
}
}


#PRODUCT {
   width: 98%;
   padding: 0 1%;
   margin: 0 auto 0 auto;
}

P#P-cap, #P-photo {
   text-align: center;
}
P#P-cap {
   line-height: 150%;
}
#P-photo img {
   max-width: 550px;
   height: auto;
}
/* パソコン閲覧はclass"pc"画像表示 */
#P-photo .pc { display: block !important; }
#P-photo .sp { display: none !important; }
/* スマホ閲覧はclass"sp"画像表示 */
@media only screen and (max-width: 640px) {
#P-photo .pc { display: none !important; }
#P-photo .sp { display: block !important; }
}

/*スマホ用補正*/
@media screen and (max-width: 640px) {
#PRODUCT {
   display: -webkit-flex;
   display: flex;
}
P#P-cap {
    line-height: 175%;
   text-align: left;
    text-align: justify;
   width: 50%;
   padding: 0 5% 0 0;
}
#P-photo {
   width: 70%;
   padding: 0 0 0 0;
}
#P-photo img {
   width: 100%;
   height: auto;
}
}


/* WRAP2-3 */
#wrap2 {
    background-color: #FFF;
    margin: 0 auto;
    padding: 0 0 10px 0;
 }
#wrap3 {
    background-color: #f7f7f7;
    margin: 0 auto;
    padding: 10px 10px 20px 10px;
}
/*PC用補正*/
@media screen and (min-width: 641px) {
#wrap2 {
    max-width: 1080px;
    padding: 0 10px 20px 10px;
}
#wrap3 { max-width: 1040px; }
}


/* #INFO */
#INFO { }
.INFO-BOX {
   padding: 15px 10px 13px 10px;
   margin:  0 10px 10px 10px;
   background-color: #FAFAD2;
   border: 2px solid #EEE;
   border-radius: 10px;
}
.INFO-BOX:last-child { margin-bottom: 35px;}
.INFO-BOX p {}
.INFO-BOX p span { display: inline-block;}
#INFO p.title {
   border-bottom: 1px dotted #CCC;
   margin: 0 auto 15px auto;
   padding: 0 0 8px 0;
   font-weight: bold;
   text-align: center;
}
#INFO p.detail {
   text-align: center;
   margin: 0 auto 15px auto;
   letter-spacing: ;
   font-weight: ;
}


/* #DAYTICKET */
#DAYTICKET-INFO {}
#DAYTICKET-INFO p {
   text-align: center;
   margin-bottom: 2px;
}
#DAYTICKET-INFO p:first-child {
   font-size: 20px;
   font-size: 2.0rem;
}
#DAYTICKET-INFO p.mini {
   text-align: center;
   margin-bottom: 10px;
}
#DAYTICKET-ATTE { text-align: center;}
#DAYTICKET-ATTE div {
   text-align: left;
   display: inline-block;
}
#DAYTICKET-ATTE div p { margin: 0 0 2px 0; }
#DAYTICKET-ATTE div p:first-child {
   text-align: center;
   font-weight: bold;
}


/* #GUEST-INFO */
.GUEST-INFO { }
.GUEST-INFO p { text-align: center; }
.guest {
   width: 100%; 
   margin: 10px 0 0 0;
   display: -webkit-flex;
   display: flex;
}
.guest div {
   width: 28%;
   text-align: center;
   padding: 6px 2%  8px 2%;
   margin-right: 1%;
   border: 3px dashed #CCC;
   border-radius: 10px;
   background-color: #FFF;
}
.guest div:last-child { margin-right: 0%;}
.guest div a { display: block;}
.guest div a:hover { opacity: 0.5;}
.guest div p {
  margin: 0 auto;
  font-weight: ;
  display: inline-block;
}
.guest div img {
   width: 85px;
   height: auto;  
   vertical-align: middle;
   margin: 0 7px;
   display: inline-block;
}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
.guest-title p, .guest-text p { letter-spacing: normal;}
.guest div { font-size: 12px;}
}
@media screen and (max-width: 850px) {
.guest div { border: 2px dashed #CCC;}
.guest div img {
   width: 90%;
   margin: 2px 0 6px 0;
}
}


/* EVENT-TABLE-etc */
#evetable table {
   width: 100%;
   border-collapse: collapse;
   border-spacing: 0;
   margin: 0 auto;
}
#evetable table th, #evetable table td {
    padding: 10px;
    border: 1px solid #ccc;
    background-color: white;
}
#evetable table th {
   font-size: 12px;
   font-size: 1.2rem;
   font-weight: bold;
}
#evetable table th span { display: inline-block;}
#evetable table td { vertical-align: top;}
#evetable table td p {
   font-size: 16px;
   font-size: 1.6rem;
   margin: 0 0 10px 0;
   text-align: left;
}
#evetable table p:last-child { margin-bottom: 0;}
#evetable table td p.mini {
   font-size: 70%;
   margin: 0 0 3px 0;
}
#evetable table td p.mini:last-child { margin-bottom : 0;}
#evetable table td p span { display: inline-block;}
#evetable table th.place00 {
    background-color: transparent !important;
    color: transparent !important;
    border: transparent !important;
    padding: 0;
    margin: 0;
}
#evetable table td.place01 {
    background-color: #2194d5 !important;
    padding: 6px 3% !important;
}
#evetable table td.place01 p {
   color: #FFF;
   text-align: center;
   letter-spacing: 0.1em;
   font-weight: bold;
}



a.soldout {
   width: 96%;
   position: relative;
    display: block;
    padding: 6px 2%;
    letter-spacing: 0.1em;
    font-weight: bold;
    text-decoration: none;
    color: #fff;
    text-align: center;
    background: red;
    border: solid 1px #7fffff;
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
    margin: 7px auto;
    pointer-events: none;
}
.btn1:hover {
   background: #ffdc00;
   border: solid 1px #ccb000;
   color: #000;
}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
a.btn1 { text-align: center;}
}



/* TICKET LINK BTN */
a.btn1 {
   width: 96%;
   position: relative;
    display: block;
    padding: 6px 2%;
    letter-spacing: 0.1em;
    font-weight: bold;
    text-decoration: none;
    color: #000;
    text-align: center;
    background: #bcffff;
    border: solid 1px #7fffff;
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
    margin: 7px auto;
}
.btn1:hover {
   background: #ffdc00;
   border: solid 1px #ccb000;
   color: #000;
}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
a.btn1 { text-align: center;}
}

/* TICKET LINK BTN */
a.btn2 {
   width: 96%;
    text-align: center;
   position: relative;
    display: block;
    padding: 6px 2%;
    letter-spacing: 0.1em;
    font-weight: bold;
    text-decoration: none;
    color: #000;
    background: #ccffcc;
    border: solid 1px #7fff7f;
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
    margin: 7px auto;
    
}
.btn2:hover {
   background: #ffdc00;
   border: solid 1px #ccb000;
   color: #000;
   
}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
a.btn2 { text-align: center;}
}

/* TICKET LINK BTN */
a.btn3 {
   width: 96%;
    text-align: center;
   position: relative;
    display: block;
    padding: 6px 2%;
    letter-spacing: 0.1em;
    font-weight: bold;
    text-decoration: none;
    color: #000;
    background: #ffe2c6;
    border: solid 1px #ffbf7f;
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
    margin: 7px auto;
    
}
.btn3:hover {
   background: #ffdc00;
   border: solid 1px #ccb000;
   color: #000;
}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
a.btn3 { text-align: center;}
}

/* TICKET LINK BTN */
a.btn4 {
   width: 96%;
    text-align: center;
   position: relative;
    display: block;
    padding: 6px 2%;
    letter-spacing: 0.1em;
    font-weight: bold;
    text-decoration: none;
    color: #000;
    background: #ffd6ff;
    border: solid 1px #ff9eff;
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
    margin: 7px auto;
    
}
.btn4:hover {
   background: #ffdc00;
   border: solid 1px #ccb000;
   color: #000;
}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
a.btn4 { text-align: center;}
}


/* TICKET LINK BTN */
a.btn5 {
   width: 96%;
    text-align: center;
   position: relative;
    display: block;
    padding: 6px 2%;
    letter-spacing: 0.1em;
    font-weight: bold;
    text-decoration: none;
    color: #000;
    background: #fc8686;
    border: solid 1px #f98888;
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
    margin: 7px auto;
    
}
.btn5:hover {
   background: #ffdc00;
   border: solid 1px #ccb000;
   color: #000;
}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
a.btn5 { text-align: center;}
}

/* TICKET LINK BTN */
a.tktbtn {
   width: 96%;
   position: relative;
    display: block;
    padding: 12px 2%;
    letter-spacing: 0.1em;
    font-weight: bold;
    text-decoration: none;
    color: #FFF;
    background: #03A9F4;
    border: solid 1px #0f9ada;
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
    margin: 10px auto;
    
}
.tktbtn:hover {
   background: #ffdc00;
   border: solid 1px #ccb000;
   color: #000;
}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
a.tktbtn { text-align: center;}
}

/* Ticket SOLD OUT */
#soldout {
   padding: 15px 10px 13px 10px;
   margin:  0 10px 10px 10px;
   background-color: #ffb3b3;
   border: 2px solid #EEE;
   border-radius: 10px;
}
#normal {
   padding: 15px 10px 13px 10px;
   margin:  0 10px 10px 10px;
   background-color: #e2efff;
   border: 2px solid #EEE;
   border-radius: 10px;
}

/* ATTENTION */
#attention {
   font-size: 12px;
    font-size: 1.2rem;
    text-align: justify;
    max-width: 1040px;
    background-color: #FFF;
    margin: 10px auto 10px auto;
    padding: 3%;
    border: 1px solid #CCC;
}
.atte-title {
   border-bottom: 1px dotted #999;
   padding: 0 0 5px 0;
   margin: 0 0 8px 0;
   text-align: center;
   letter-spacing: 0.1em;
}
#attention2 { line-height: 150%;}
.sp-adaptation {
   width: 100%;
   margin: 0 0 5px 0;
   display: -webkit-flex;
   display: flex;
}
.sp-adaptation div {
    width: 48%;
    padding: 1%;
    border: 1px solid #999;
    letter-spacing: normal;
    vertical-align: top;
}
.sp-adaptation div:last-child { border-left: none;}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
#attention {
    font-size: 8px;
    font-size: 0.8rem;
}
}
#qa {
    background-color: #EFEFEF;
    padding: 7px;
}
#qa .qabox {
    width: 100%;
    margin: 0 0 10px 0;
}
#qa .qabox div {
    background-color: white;
    border:solid 1px #EFEFEF;
    padding: 6px 8px;
}
#qa .qabox div:first-child {
   border-bottom: none;
}


/* INQUIRY */
#inquiry {
   padding: 0;
   margin: 15px 0 0 0;
}
#inquiry p { text-align: center;}



/* GOODS */
#wrap4 {
   max-width: 1100px;
    background-color: #FFF;
    margin: 0 auto;
    padding: 0 0 10px 0;
 }
#goods {
   width: 100%;
   height: auto;
}
#goods img {
   width: 100%;
   height: auto;
}
#goods-atte {
   width: 85%;
   display: -webkit-flex;
   display: flex;
   margin: 10px auto 0 auto;
}
#goods-atte div:first-child {
   width: 38%;
   padding: 0 2% 0 0;
}
#goods-atte div:last-child {
   width: 60%;
   padding: 0;
}
#goods-atte div p {
   letter-spacing: normal;
   line-height: 125%;
   margin-bottom: 1px;
}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
#goods-atte { width: 95%;}
#goods-atte div p {
    font-size: 8px;
    font-size: 0.8rem;
}
}


/*SCROLL*/
#page-top {
    position: fixed;
    bottom: 30px;
    right: 40px;
}
#page-top a {
    width: 80px;
    height: 80px;
    display: block;
    opacity: 0.5;
}
#page-top a:hover { opacity: 1.0;}

/* COPYRIGHT */
#copyright {
    margin-top: 15px;
    text-align: center;
    letter-spacing: 0.1em;
}
/*スマホ用補正*/
@media screen and (max-width: 640px) {
#copyright {
    font-size: 8px;
    font-size: 0.8rem;
}
}
