@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600;700;900');
@import url('https://fonts.googleapis.com/css2?family=Fauna+One&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;600&display=swap');
/*@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700');*/
/*@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700');*/


@media screen and (min-width: 751px) {
/* reset css */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }body { line-height: 1; }article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }nav ul { list-style: none; }blockquote, q { quotes: none; }blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }/* change colours to suit your needs */ins { background-color: #ff9; color: #000; text-decoration: none; }/* change colours to suit your needs */mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }del { text-decoration: line-through; }abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }table { border-collapse: collapse; border-spacing: 0; }/* change border colour to suit your needs */hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }input, select { vertical-align: middle; }


/*
 * defaut style
 */
html { height: 100%; overflow-y: scroll; overflow-x: hidden; font-size:16px; padding-top:0; margin-top:0!important; background:#F6F6F6; }
body { /* min-height:100%; */  font-size: 100%; color: #ffffff; word-wrap: break-word; overflow:hidden; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none /* for ipad */; }
body { font-family: 'Noto Sans JP', sans-serif; font-weight:400; }
select,input,textarea { font-family: 'Noto Sans JP', sans-serif; font-size:16px; color:#ffffff; }
body.loading .contents,
body.loading #header { opacity:0.2; }
body.loading2 .contents,
body.loading2 #header  { opacity:0; }
body.loaded .contents,
body.loaded #header { opacity:1; /* animation:fadeInEx2 0.5s ease 0.8s forwards!important; */ }
body.loaded2 .contents,
body.loaded2 #header { opacity:1; /* animation:fadeInEx 0.5s ease 0s forwards!important; */ }
body.loading #header-inner { opacity:0; }
body.loaded #header-inner { opacity:1; /* animation:fadeInEx 0.5s ease 0.8s forwards!important; */ }
div { font-size:16px; letter-spacing:0px; }
table { word-break: break-word; }
img { max-width: 100%; vertical-align: bottom; border: none; }
li { list-style-type: none; }
ol { margin-bottom:2.0em; }
ol li {  margin-left:20px; padding-left:5px; list-style-type:decimal; margin-bottom:0.2em; line-height:180%; }
ul { margin-bottom:2.0em; }
ul li {  margin-left:20px; padding-left:0px; list-style-type:disc; margin-bottom:0.5em; line-height:180%; }
dt { font-weight:bold; line-height:160%; margin-bottom:0.5em; }
dd { margin-bottom:1.5em; line-height:160%; }
p { margin-bottom: 3.0em; line-height:200%; }
p:last-child { margin-bottom:0; }
p > a { color: #A9803E }
p > a:hover { text-decoration:none; }
a { color:#A9803E; text-decoration: none; }
.main-content a { transition:all 0.3s ease-in-out; }
.main-content a:hover { opacity:0.7; text-decoration: underline}
sup { position: relative; font-size: 100%; top: -5px; }
sub { position: relative; font-size: 100%; bottom: -5px; }
.clearfix { *zoom: 1; }
.clearfix:after { content: ''; display: block; clear: both; height: 0; margin-top: -1px; }
.sp { display: none!important; }
.center { text-align:center; }
.pc-center { text-align:center; }
.right { text-align:right; } 
.pc-right { text-align:right; } 
.img-left { float:left; margin-right:50px; margin-bottom:50px; width:41.66666666666667%; }
.img-right { float:right; margin-left:50px; margin-bottom:50px; width:41.66666666666667%; }
strong { font-weight:700; }
em { font-style:normal; }
* { box-sizing:border-box; }
.nowrap { white-space:nowrap; display:inline-block; }
.red { color:#ff0000; }
.eng { font-family: din-2014, sans-serif; }


#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background-color: transparent;
  z-index: 9999;
}
#loader { position: fixed;	text-align: center; color: #333; z-index: 10000; width:80px; height:80px;	left:50%; top:50%; transform:translate(-50%,-50%); overflow:hidden; }
#loader span { position:absolute; width:80px; height:80px; left:0; bottom:0;  overflow:hidden; display:block; }
#loader span:nth-child(2) { height:0%; }
#loader span:nth-child(1) img { width:80px; height:80px; }
#loader span:nth-child(2) img { position:absolute; left:0; bottom:0; }




/*
 * contents
 */
body.loading { overflow:hidden; height:100%; }
body.loading #container { visibility:hidden; }
	
.bg-wrapper{ background:url("../img/bg.jpg") no-repeat; background-size:cover; position: fixed; height: 100vh; width: 100% }
.container { max-width:1400px; margin:0 auto; position:relative;} 
.contents { max-width:1180px; min-width:980px; margin-left: 220px; position:relative; z-index:1; background-color: #ffffff; color: #000000 }
.content-wrapper {padding-bottom: 150px}
.main-content { margin:0 auto; padding:0 80px 0; position:relative; box-sizing: content-box; z-index:2; min-height:600px; }

.topic-path { width:1100px; height:45px; box-sizing:content-box; margin:0 auto; position:absolute; left:50%; top:80px; transform:translateX(-50%); height:340px; z-index:10; pointer-events:none; }
.topic-path ul { position:absolute; left:50%; bottom:0; margin:0; padding:0 30px; white-space:nowrap; text-overflow: ellipsis; overflow:hidden; visibility: visible; width:50%; line-height:45px; background:rgba(255,255,255,0.9); border-radius:8px 0 0 0; pointer-events:auto; }
.topic-path ul li { display:inline; line-height:45px; font-size:14px; margin:0; padding:0; }
.topic-path ul li:after { content:">"; margin:0 2px 0 7px; }
.topic-path ul li:last-child:after { display:none; }
.topic-path ul li a { position:relative; display:inline; line-height:45px; color:#D91A1D; vertical-align:bottom; transition:0.3s ease-in-out; }
.topic-path ul li:first-child a { width:15px; height:15px; margin-right:0px; padding-left:35px; }
.topic-path ul li:first-child a:after { position:absolute; left:0; top:50%; transform:translateY(-50%); content:""; display:inline-block; width:15px; height:15px; background:#fff; background:url(../img/ico_home.svg) no-repeat; background-size:cover; }
.topic-path ul li a:hover { text-decoration:none; opacity:0.7; }



/* 汎用 */
.section { margin-bottom:100px; pointer-events:none; }
.section * { pointer-events:auto; }
.section:last-child { margin-bottom:0; }
.section > .inner { max-width:1100px; }
.block { margin-bottom:140px; }
.article { margin:0 40px; }
.article p { line-height:180%; }
.indent01 { margin:0 45px 0; }
.red { color:#D12916; }

.section-title  { border-bottom: 1px solid #000000; margin:0 0 30px;padding:0 15px 15px 15px; font-size: 20px;font-family:"Noto Serif JP"; color: #000000  }
.section p {padding: 0 15px} 
    
.page-title { position:relative; z-index:1; background: linear-gradient(#B5945C 0%, #D9C48F 100%); margin:0 0 60px; height: 150px }
.page-title h1 { position: absolute; color:#fff; font-family:"Noto Serif JP"; font-size:24px; font-weight:400; text-align: center; top: 40px; left: 50%; transform: translateX(-50%);}
.page-title h1 span { font-family:"Fauna One"; font-size:13px; display: block; padding-top: 30px; letter-spacing: 5px; color: #61431A; font-weight: 500}

.page-title div { position:absolute; color:#fff; top:50%; right:30px; transform:translateY(-50%); font-family:"Noto Serif JP"; font-size:15px; font-weight:500;  }
.page-title .dummy { visibility:hidden; }

.title01 { position:relative; margin-top:60px; margin-bottom:30px; color:#fff; font-family:"Noto Serif JP"; font-size:18px; font-weight:400; line-height:100%; background-color: #88691F; padding:12px 0 15px 20px ; }
.title01 span { font-size:14px; margin-left:10px; }
.title02 { position:relative; margin-top:60px; margin-bottom:30px; color:#fff; font-family:"Noto Serif JP"; font-size:18px; font-weight:700; line-height:140%; padding:0; background:#171717; padding:12px 22px; text-align:center; }

.btn01 { position:relative; margin:100px auto; text-align:center; }
.btn01 a { position:relative; display:block; background:#fff; display:inline-block; border:1px solid #D12916; color:#D12916; padding:15px; width:380px; line-height:150%; text-align:center; font-size:18px; font-weight:700; transition:0.3s ease-in-out; }
.btn01 a:after { content:""; display:block; position:absolute; right:25px; top:50%; transform:translateY(-50%); background:url(../img/ico_arrow01.svg) no-repeat; background-size:23.49px 5.28px; width:24px; height:6px; transition:0.2s ease-in-out; }
.btn01 a:hover { text-decoration:none; background:#D12916; border:1px solid #D12916; color:#fff; }
.btn01 a:hover:after { background-image:url(../img/ico_arrow01_w.svg); right:20px; }


.box01 { position:relative; margin-bottom:-30px; }
.box01:before { content:""; display:block; position:absolute; left:calc(455 / 1100 * 100%); top:0; background:#F7F7F7; width:3000px; height:100%; }
.box01 .inner { position:relative; padding-left:calc(455 / 1100 * 100%); }
.box01 .thumb { width:calc(550 / 1100 * 100%); position:absolute; top:50%; left:0; transform:translateY(-50%); }
.box01 .text { padding:90px 0 90px calc(155 / 645 * 100%); }

.box-flex01 { display:flex; flex-wrap:nowrap; margin:0 auto; }
.box-flex01 > *:nth-child(1) { width:calc(470 / 1020 * 100%); margin-right:calc(80 / 1020 * 100%); }
.box-flex01 > *:nth-child(2) { width:calc(470 / 1020 * 100%); }


.table01 { margin-top:55px; margin-bottom: 40px }
.table01 table { width:100%; border-top:1px solid #707070; border-left:1px solid #707070; line-height:180%; }
.table01 table th { border-bottom:1px solid #707070; border-right:1px solid #707070; font-weight:700; padding:22px 20px; vertical-align:top; background:#F5F3F0; text-align:left; width:270px; color: #61431A}
.table01 table td { border-bottom:1px solid #707070; border-right:1px solid #707070; padding:22px 20px; vertical-align:top; }


.data-block01 { display:table; width:100%; border-top:1px solid #E4E5E4; }
.data-block01 dl { display:table-row; }
.data-block01 dt { display:table-cell; vertical-align:middle; border-bottom:1px solid #E4E5E4; background:#F7F7F7; padding:25px 25px; font-weight:700; text-align:center; width:170px; }
.data-block01 dd { display:table-cell; vertical-align:middle; border-bottom:1px solid #E4E5E4; padding:25px 25px 25px 40px; }



/* home */
.home .contents {background-color: transparent}
.main-logo {width: 100%; /*background:linear-gradient(#CDD7D9, 20%, #ffffff); */text-align: center; padding: 56px 0 47px 0}
.main-logo img {width: 600px; margin:0 auto}
.main-img {width: 100%; margin-bottom: 60px; position: relative}
.main-img .credit1 { background-color:rgba(136,105,31,0.75); font-family: "Noto Serif JP"; color: #fff;  position:absolute; left:6.5%; bottom:30px; width:37%; height: 58px; display: flex; align-items: center}
.main-img .credit2 { background-color:rgba(136,105,31,0.75); font-family: "Noto Serif JP"; color: #fff;  position:absolute; right:5%; bottom:30px; width:40%; height: 58px; display: flex; flex-wrap: wrap; align-items: center; align-content: center}
.main-img .credit1 .name { display: inline-block; font-size:22px; padding-left: 20px}
.main-img .credit2 .name { display: inline-block; font-size:18px; padding-left: 20px}
.main-img .credit1 .role { font-size:13px; display: inline-block; margin-left: 20px; line-height: 1.6 }
.main-img .credit2 .role { font-size:12px; display: inline-block; margin-left: 20px; line-height: 1.8 }
.main-img .credit1 .en { font-size:12px;}

.outline-box { display: flex; margin-bottom: 60px; }
.outline-box .title {width:17.64%; text-align:center; background-color:#9B8055;font-family: "Noto Serif JP"; color: #5A4013; font-size: 22px; position: relative; font-weight: 500}
.outline-box .title .title-text {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.outline-box .title .en {font-family: 'Fauna One', serif; font-size: 14px; letter-spacing: 0.2em; display: block; margin-bottom: 15px; color: #ffffff}
.outline-box .schedule { background-color:#F5F5F5; width: 82.36%;}
.outline-box .schedule ul {display: flex; flex-wrap: wrap; padding-top: 40px; margin-left: 20px;}
.outline-box .schedule ul li {list-style: none; position: relative; padding-left: 15px; width: 30%; margin-bottom: 30px}
.outline-box .schedule ul li:before { content:""; display:block; background:url(../img/ico_arrow03.svg) no-repeat; background-size:5px 8px; width:5px; height:8px; position:absolute; left:0; top:50%; transform:translateY(-50%); }
.outline-box .schedule ul li a {color: #000000}
.outline-box .soldout .note {position: absolute; left: 16px; bottom: -22px; font-size: 13px}

.info-area .title { position: relative; font-family: 'Fauna One', serif; font-size:24px; font-weight:500; color:#5A4013; text-align:center; margin-bottom:35px;letter-spacing: 0.2em}
.info-area .title:before { content:""; display:block; position:absolute; left:0; top: 50%; transform:translateY(-50%); width:40%; height: 1px; background-color: #5A4013}
.info-area .title:after { content:""; display:block; position:absolute; right:0; top: 50%; transform:translateY(-50%); width:40%; height: 1px; background-color: #5A4013}
.info-area .topics ul { padding:25px 60px; overflow:auto; height:400px; margin:0; color: #000000; background-color: rgba(245,245,245,0.8)}
.info-area .topics ul li { border-bottom:1px solid rgba(119,99,65,0.45); padding:22px 20px; list-style-type:none; margin:0; }
.info-area .topics ul li:last-child { border-bottom:none; }
.info-area .topics .date { font-size:14px; }
.info-area .topics ul::-webkit-scrollbar{  width: 10px; }
.info-area .topics ul::-webkit-scrollbar-track{ background-color: #9B8055; }
.info-area .topics ul::-webkit-scrollbar-thumb{ background-color: #4D4326; }
.info-area .twitter .note {letter-spacing: 0.1em}
.pv-area {margin: 90px 0}
.pv-area .title { position: relative; font-family: 'Fauna One', serif; font-size:24px; font-weight:400; color:#5D6E72; text-align:center; margin-bottom:35px;letter-spacing: 0.1em}
.pv-area .title:before { content:""; display:block; position:absolute; left:0; top: 50%; transform:translateY(-50%); width:30%; height: 1px; background-color: #AAB8BB}
.pv-area .title:after { content:""; display:block; position:absolute; right:0; top: 50%; transform:translateY(-50%); width:30%; height: 1px; background-color: #AAB8BB}

/* intro */
.intro-text { font-size: 22px; line-height:260%; }
.intro-image .title { font-family:"Noto Serif JP"; font-size:18px; font-weight:400; color:#EED87E; text-align:center; margin-bottom:20px; }
.main-title { font-family:"Noto Serif JP"; font-size:24px; font-weight:500; color:#000000; text-align:center; margin-bottom:60px; line-height: 2.4}
.intro-image {display: flex; margin-bottom: 120px; justify-content: space-around}
.main-photo {width: 461px; position: relative}
.intro-image .credit { font-size:11px; position:absolute; right:0; bottom:-18px; }

/* outline */
body.outline em { color:#B59557; font-weight:400; }
.outline-nav ul { display:flex; flex-wrap:wrap; margin:0; }
.outline-nav li { width:calc(200 / 1020 * 100%); margin:0; margin-right:calc(5 / 1020 * 100%); list-style-type:none; margin-bottom: 5px; line-height: 1.4;  }
.outline-nav li:nth-child(5n) { margin-right:0; }
.outline-nav li a { display:block; background:#ffffff; color:#61431A; font-family:"Noto Serif JP"; font-size:16px; font-weight:700; text-align:center; border: 1px solid #707070; padding: 15px 0; position:relative; }
/*.outline-nav li a span { display:block;}*/
/*.outline-nav li a span:nth-child(2n) { font-size: 12px}*/
body.outline li .date { font-size: 12px; display: block}
.outline-nav li a:after { content:""; display:block; background:url(../img/ico_arrow03.svg) no-repeat; background-size:5px 8px; width:5px; height:8px; position:absolute; right:20px; top:50%; transform:translateY(-50%); transition:0.3s ease-in-out; }
.outline-nav li a:hover { background:#88691F; opacity:1; color: #fff;text-decoration: none}
.outline-nav li a:hover:after { content:""; display:block; background:url(../img/ico_arrow02.svg) no-repeat; background-size:5px 8px; width:5px; height:8px; position:absolute; right:20px; top:50%; transform:translateY(-50%); transition:0.3s ease-in-out; }
.outline-nav li.active a { background:#88691F; color: #fff}
.outline-nav li.active a:after { content:""; display:block; background:url(../img/ico_arrow02.svg) no-repeat; background-size:5px 8px; width:5px; height:8px; position:absolute; right:20px; top:50%; transform:translateY(-50%); transition:0.3s ease-in-out; }
	
.price-group { display:flex; flex-wrap:wrap; margin:10px 0 -15px;}
.price-group dl { width:calc(230 / 760 * 100%); margin-right:calc(35 / 760 * 100%); border:1px solid #4D4D4D;margin-bottom: 35px; }
.price-group dl:nth-child(3n) {margin-right: 0;}
.price-group dt { background:#88691F; border-bottom:1px solid #707070; text-align:center; font-weight:700; padding:10px; margin:0; color: #ffffff }
.price-group dd { text-align:center; font-weight:700; padding:10px; margin:0; white-space:nowrap; }
.map iframe { width:100%; height:260px; margin:25px 0 0px; }
.sp-map { font-size:14px; }
.pg-a {color: #D67C5B}
.pg-b {color: #509D9A}
.note {font-size: 80%}
.en-title {font-size: 80%; margin-bottom: 10px; display: inline-block}
body.outline .sponsorlogo {width: 250px}
body.outline .sponsorlogo2 {width: 166px}
body.outline .mt {margin-left: 20px}
body.outline .pdf-dl {position: relative; right: 0; top:-10px}
body.outline .pdf-dl a { position: absolute; right: 10px; top: -70px; display: block; width: 180px; line-height: 31px; font-size: 14px; text-align: center; background: #C49E51; transition: all 0.3s ease-in-out; font-family: "Noto Serif JP"; font-weight: 500;padding-right: 10px;}
body.outline .pdf-dl a:after { content: ""; display: block; background: url(../img/ico_arrow02.svg) no-repeat; background-size: 5px 8px; width: 5px; height: 8px; position: absolute; right: 15px; top: 50%; transform: translateY(-50%); transition: 0.3s ease-in-out;}
body.outline .img-seats {text-align: center; margin: 0 auto 20px auto; }
body.outline .img-seats img {width: 400px; margin-bottom: 20px}	
body.outline .img-seats span {font-size: 80%; display: block}
body.outline ul.sche-list {margin:10px 0}
body.outline .sche-list li:last-child {margin-bottom: 0}
body.outline .sche-list li span {display: inline-block}	
body.outline .sche-list li span:first-child {width: 9em}
body.outline .sche-list li span:nth-of-type(2n) {margin-right: 2em}

    
/* profile */
body.profile .section-title {margin-bottom: 40px; font-size: 30px; font-weight: 400}
body.profile .section-title .en {font-size:20px;  font-weight: 400 }
.profile-box2 {display: flex; margin-bottom: 120px; justify-content: space-around; align-items: flex-start}
.profile-box .main-photo {width: 100%; position: relative; margin-bottom: 60px}
.profile-box .credit { font-size:11px; position:absolute;left:0; bottom:-18px; }
.profile-box .profile-text {width: 100%}
.profile-box2 .main-photo {width: 35%; position: relative}
.profile-box2 .profile-text {width: 60%}
.profile-box2 .credit { font-size:11px; position:absolute; left:0; bottom:-18px; }

/* information */
body.information .date { text-align:right; font-family:"Noto Serif JP"; font-weight:500; margin-top:-15px; }



/* animation */
.standby { transform: translateY(30px); opacity:0; }
.is-animated { transition-delay:0.50s!important; transform: translateY(0px); opacity:1; transition-duration: .5s!important; transition-property:transform,opacity!important; }
.is-completed { transition-delay:0s!important; transition-duration:0s!important; }



	
/*
 * header & footer
 */
#header { height:calc(100% + 20px); width:220px; z-index:2; position: fixed; top: 0; }
#header.hidden { background:rgba(255,255,255,0.9); }
#header-inner { margin:0 auto; padding:0; z-index:100; box-sizing:content-box; min-height: 800px }
#header .logo { width:80px; display:block; margin:30px auto 25px; }
#header .logo:hover { text-decoration:none; }
#header .header-gnav { padding-top:20px; }
#header .header-gnav > ul > li { margin:0; padding:0 20px; list-style-type:none; position:relative; }
#header .header-gnav > ul > li > a { color:#61431A; display:block; line-height:50px; font-family:"Noto Serif JP"; font-size:15px; font-weight:500; position:relative; text-align:left; white-space:nowrap; transition:0.3s ease-in-out; padding-left: 10px; background-color: rgba(255,255,255,0.6) }
#header .header-gnav > ul > li > a:before { content:""; display:block; width:100%; height:1px; background-color:#D6C29D; position:absolute; left:0; bottom:0; transition:all 0.3s ease-in-out; }
#header .header-gnav > ul > li > a:after { content:""; display:block; width:5px; height:7px; background:url("../img/arrow04.svg") no-repeat; position: absolute; right:10px; bottom:20px; z-index:2; transition:all 0.3s ease-in-out; }
#header .header-gnav > ul > li.information > a { line-height:26px; margin:50px 0 60px; }
#header .header-gnav > ul > li.information > a:before { display:none; }
#header .header-gnav > ul > li.information > a:after { display:none; }
#header .header-gnav > ul > li:hover > a { color:#ffffff; text-decoration:none; background-color: rgba(136, 105, 31, 0.75);}
#header .header-gnav > ul > li:hover > a:after {background-image:url("../img/arrow05.svg") }
body.intro #header .header-gnav > ul > li.intro > a,
body.outline #header .header-gnav > ul > li.outline > a,
body.profile #header .header-gnav > ul > li.profile > a,
body.information #header .header-gnav > ul > li.information > a { color:#ffffff; text-decoration:none; background-color: rgba(136, 105, 31, 0.75);; font-weight: 500 }
/*body.intro #header .header-gnav > ul > li.intro > a:before,
body.outline #header .header-gnav > ul > li.outline > a:before,
body.profile #header .header-gnav > ul > li.profile > a:before,
body.information #header .header-gnav > ul > li.information > a:before { opacity:0; }*/
body.intro #header .header-gnav > ul > li.intro > a:after,
body.outline #header .header-gnav > ul > li.outline > a:after,
body.profile #header .header-gnav > ul > li.profile > a:after,
body.information #header .header-gnav > ul > li.information > a:after {background-image:url("../img/arrow05.svg") }
#header .header-gnav .sub { opacity:0; pointer-events:none; position:absolute; width:342px; left:200px; top:0; transition:0.3s ease-in-out; -webkit-backface-visibility:hidden; backface-visibility:hidden; filter: blur(0); -webkit-filter: blur(0); }
#header .header-gnav .sub:before { content:""; display:block; position:absolute; width:342px; height:100%; left:0; top:0; }
#header .header-gnav li:hover .sub { opacity:1; pointer-events:auto; }
#header .header-gnav .sub .nav { width:342px; margin:0 auto; }
	
#header .header-gnav .sub ul { padding:0; margin:0;}	
#header .header-gnav .outline .sub ul { display: flex; flex-wrap: wrap; }
#header .header-gnav .sub ul li { margin:0; padding:0; list-style-type:none; position:relative; width: 300px }
#header .header-gnav .outline .sub ul li { width: 160px }
#header .header-gnav .outline .sub ul li:nth-child(odd) { border-right: 1px solid #D6C29D;}
	
#header .header-gnav .sub ul li a { position:relative; color:#ffffff; font-family:"Noto Serif JP"; font-size:14px; font-weight:400; line-height:35px; height: 35px; display:block; white-space:nowrap; transition:0.3s ease-in-out; -webkit-backface-visibility:hidden; backface-visibility:hidden; filter: blur(0); -webkit-filter: blur(0); text-align:center; background:#BFA35D; }
#header .header-gnav .sub ul li a:before { content:""; display:block; width:100%; height:1px; background:#D6C29D; position:absolute; left:0; bottom:0; transition:all 0.3s ease-in-out; }
		
/*#header .header-gnav .sub ul li:last-child a:before,
#header .header-gnav .sub ul li:last-child a:after { display:none; }*/
#header .header-gnav .sub ul li:hover a { color:#ffffff; text-decoration:none; background-color:#A28646}
#header .header-gnav .sub ul li:hover a:before{ opacity:0; }
#header .header-gnav .sub ul li:hover a:after { opacity:0.6; }
	
/* sns */
#header .sns .X img { width: 24px;}
#header .sns ul li {list-style: none; margin: 0 15px; }
#header .sns .X { display:block; transition:all 0.3s ease-in-out; text-align:center; padding-bottom: 15px }
#header .sns .X a:hover { opacity:0.7; }


#footer { position:relative; z-index:2; font-size:12px; background: linear-gradient(rgba(181,148,92,1) 0%, rgba(223,206,163,1) 100%); color: #000000; min-height: 200px; padding-top: 40px }
#footer-inner { position:relative; max-width:1100px; margin:0 auto; padding-top:0px; z-index:1; }
#footer-inner a { }
#footer .page-top { opacity:0; position:fixed; right:35px; bottom:35px; transition:opacity 0.3s ease-in-out; }
#footer .page-top.visible { opacity:1; }
#footer .page-top a { background:url(../img/pagetop.jpg) no-repeat; background-size:33px 131px; width:33px; height:131px; display:block; }
#footer .page-top a:hover { opacity:0.7; }
#footer .copyright { font-size:12px; text-align:center; line-height: 2.5}
#footer .cookie {font-size: 12px;text-align: center;margin: 0 75px 30px;line-height: 160%;}
#footer .cookie a {text-decoration: underline; color: #ffffff}
#footer .cookie a:hover { text-decoration:none; }
#footer.no-ticket {min-height: 200px }
#footer.no-ticket .copyright { transition:0.6s ease-in-out; }
#footer.no-ticket .page-top { bottom:35px!important; transition:0.6s ease-in-out; }


.ticketinfo { display:none; position:fixed; left:0; bottom:-103px; z-index:1000; width:100%; height:103px; background: linear-gradient(280deg, rgba(216,201,172,1) 0%, rgba(147,124,78,1) 100%); text-align:center; transition:0.6s ease-in-out 1.5s; }
body.home .ticketinfo { display:block; }
.ticketinfo.show { bottom:0; }
.ticketinfo.hide { opacity:0; transition:0.6s ease-in-out; pointer-events:none; }
.ticketinfo a { position:relative; color:#000; font-family:"Noto Serif JP"; font-size:24px; font-weight:700; display:inline-block; line-height:100px; transition:0.3s ease-in-out; }
.ticketinfo a:after { content:""; display:block; background:url(../img/ico_arrow01.svg) no-repeat; background-size:23.47px 4.03px; width:24px; height:5px; position:absolute; right:-40px; top:50%; transform:translateY(-50%); transition:0.3s ease-in-out; }
.ticketinfo a:hover { text-decoration:none; opacity:0.7; }
.ticketinfo a:hover:after { right:-45px; }
.ticketinfo .close { background:url(../img/ico_close.svg) no-repeat; background-size:26px 26px; width:26px; height:26px; position:absolute; right:38px; top:50%; transform:translateY(-50%); transition:0.3s ease-in-out; cursor:pointer; }
.ticketinfo .close:hover { opacity:0.7; }
}




