/* CSS Document */
@charset "UTF-8";
* {
	padding:0;
	margin:0px;
	outline:none;
}
	
html {
	overflow-y:scroll;
}
	
body {
	background:url(../images/bg02.gif) repeat-x;
	text-align:center;
	font-family:'Hiragino Kaku Gothic Pro','qMmpS Pro W3','CI',Meiryo,Osaka, 'lr oSVbN',sans-serif;
	color:#333;
	font-size:100%;
	line-height: 1.5;
}
 
img {
	vertical-align:top;
	border:0;
}

#wrap {
	text-align:center;
}

#header {
	width:950px;
	text-align:left;
	margin:0 auto;
	}
#contents {
	width:980px;
	margin:0 auto;
	text-align: left;
	border: 1px solid #999;
	padding-bottom: 40px;
}
#footer {
    color: #888;
    font-family: '貂ｸ譏取悃', 'Yu Mincho', 'YuMincho', '�ｭ�ｳ �ｰ譏取悃', '�ｭ�ｳ 譏取悃', Georgia;
    font-size: 14px;
    padding: 25px 0;
    text-align: center;
	line-height: 1.2;
	letter-spacing: 0;
}
.sp {display: none;}

/* --- class and other set --- */

	
* html #contents div{
/*\*/height:1%;/*for WinIE*/
display:inline-table;/*for MacIE*/
}
.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}
.clearfix {
    display: inline-block;
    min-height: 1%;
}
/* Hides from IE-mac \*/
* html .clearfix {
    height: 1%;
}
.clearfix {
    display: block;
}
/* End hide from IE-Mac */

.ar {text-align: right;}
.ac {text-align: center; }

.left {
	float: left;
}
.right {
	float: right;
}
.narrow{letter-spacing:-1px;}
.narrow2{letter-spacing:-2px;}
.small {font-size: 90%; }

.shadow {
	box-shadow:rgba(0, 0, 0, 0.2) 2px 2px 6px 2px;
}
.emp {
	font-weight: bold;
}
.just {
	text-align: justify;
	text-justify: inter-ideograph;
	margin: 10px 0;
}
.indent {
	margin-left: 1em;
}
.indent.auto {
	text-indent: -1em;
}
.square {
	font-family:"郢晏�ﾎ帷ｹｧ�ｮ郢晄焔�ｧ蛛ｵ縺� Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "�ｽ�ｭ�ｽ�ｳ �ｽ�ｰ郢ｧ�ｴ郢ｧ�ｷ郢晢ｿｽ縺�", "MS PGothic", sans-serif
}

#outline{padding: 0 0 35px;   font-feature-settings: "palt";}
#herolive{padding: 35px 0 0; background: url("../images/top_outline_2022.png")no-repeat; background-size: 400px 300px;}
#herolive h2{color: #0a6fb8; font-size:160%; font-feature-settings: "palt" 1; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; margin: 0 0 10px;}
#outline #herolive p.htlname{font-weight: bold; font-size: 100%;}
#herolive dl{display: flex; font-size: 85%; margin-bottom: 10px;}
#herolive dt{width: 4.5em; font-weight: bold;}
#herolive a{color: #000;}


.top-page #outline p.right_note{padding-left: 1.5em; margin: 10px 0 0; font-size: 70%;}
.right_note::before{content: '遯ｶ�ｻ'; margin-left: -1.4em;}

/* --- head --- */

#header div {
	width: 200px;
}
#header .right {
	text-align: right;
	padding: 24px 12px 0 0;
}

/* --- body --- */

#contents table {
	border-collapse: collapse;
}
#contents ul {
}
#contents li {
	list-style-type: none;
}
#contents a img:hover {
	opacity: 0.8;
  	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
  	filter: alpha(opacity=80);
}
#contents div.pagetop {
	text-align: right;
	margin-top: 24px;
	padding:0 0 24px 0;
	font-size: 11px;
}
#contents div.pagetop a {
	display: inline-block;
	width: 96px;
	padding: 10px 0;
	line-height: 0;
	text-align: center;
	background-color: #c9caca;
	border-radius: 6px;
}
#contents div.pagetop a:hover {
	background-color: #ddd;
}
#contents div.pagetop a:hover img {
	opacity: 1;
}


#contents div.pagetop a:link,
#contents div.pagetop a:visited {
	color:#c8a063;
	text-decoration: none;
}

#contents div.pagetop a:hover,
#contents div.pagetop a:active {
	text-decoration: underline;
}
/* --- global --- */
#global {
	width: 980px;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #003366;
}
#global li {
	width: calc(100% / 5);
	text-align: center;
	border-left: 1px solid #fff;
}
#global li:first-child{
	border-left:none;
}

#global li a{
	color: #fff;
	font-size: 12px;
	text-decoration:none;
	display: block;
}

/* --- main area --- */
.article {
	margin-left: 40px;
	margin-right: 40px;
}
#title-area {
	padding: 28px 0;
}
h1 {
	font-size: 162.5%;
	color: #e60012; 
	border-bottom: 1px solid #e60012;
}

/* --- head-area --- */
#head-area img {
	width: 100%;
	height: auto;
}

/* --- top page --- */

.top-page h1 {
	line-height: 0;
	border-bottom: none;
	padding: 0;
	margin: 0;
}

.top-page #menu-area {
	padding: 10px 40px 0;
	background: url(../images/bg_top.jpg) repeat-y;
}

.top-page #outline .left {
	width: 504px;
}
.top-page #outline .right {
	width: 396px;
	padding: 36px 0 10px;
}
.top-page #outline p {
	font-size: 75%;
	line-height: 1.6;
}
.top-page #outline p.emp {
	font-weight: bold;
	color: #e60012;
	font-size: 100%;
	line-height: 1.5;
}
.top-page .precautions {
	padding: 10px;
	font-size: 14px;
}
.top-page .precautions li {
	padding-left: 1em;
	text-indent: -1em;
}

/* --- ticket page --- */

.ticket h1 {
	letter-spacing: -1px;
}
#ticket_price #title-area + p {
	margin: 0 0 10px;
}
.ticket #price {
	margin: 0 0 50px;
}
.ticket #price h2 {
	font-size: 112.5%;
	font-weight: normal;
	color: #036eb8;
}
.ticket #price h3 {
	font-weight: normal;
	color: #036eb8;
	margin-top: 30px;
}
.ticket #price h3 + p {
	font-size: 13px;
	line-height: 1.3em;
	margin-top: 5px;
	padding-left: 1em;
	text-indent: -1em;
}
.ticket #price .left,
.ticket #price .right {
	width: 430px;
}
.ticket #price table {
	margin-top: 10px;
}
.ticket table{
	border-top: 1px solid #036eb8;
}
.ticket td,
.ticket th {
	padding: 4px 0 2px 0;
	font-size: 14px;
}
.ticket #price tr {
	border-bottom: 1px solid #036eb8;
}
.ticket #price td.note {
	font-size: 12px;
}
.ticket #price .img-area {
	margin-top: 20px;
}
.ticket #price .img-area  img {
	border: 1px solid #999;
	box-sizing: border-box;
}

.ticket #ticket_sell {
	padding: 40px 40px 20px 40px;
}
.ticket #ticket_sell h2 {
	color: #e60012;
	font-size: 125%;
	line-height: 1.6;
	border-left: 10px solid #e60012;
	padding-left: 0.5em;
}
.ticket #ticket_sell .shelf {
	border: 1px solid #e60012;
	padding: 0 24px 25px;
	margin-top: 16px;
}
.ticket #ticket_sell .shelf h3 {
	padding-top: 28px;
	font-size: 100%;
	color: #e60012;
}
.ticket #ticket_sell .shelf h3 + p {
	font-size: 14px;
	font-weight: bold;
	color: #555;
	margin-top: 5px;
}
.ticket #ticket_sell .shelf p + h3 {
	padding-top: 10px;
}

.ticket #ticket_sell .shelf .unit {
	border: 1px solid #e60012;
	border-radius: 6px;
	background-color: #fdf3f4;
	box-shadow:rgba(0, 0, 0, 0.2) 2px 2px 6px 2px;
	padding: 15px 15px 15px 20px;
	margin-top: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.ticket #ticket_sell .shelf .unit p {
	width: 450px;
	padding-right: 20px;
	box-sizing: border-box;
}
.ticket #ticket_sell .shelf .unit .layer {
	width: 338px;
}

.ticket #ticket_sell .shelf .unit .layer .coming_soon {
	width: auto;
	display: inline-block;
	font-size: 14px;
	font-weight: bold;
	background: #e60012;
	color: #fff;
	padding: 5px 15px;
	margin-bottom: 8px;
	border-radius: 1000px;
}
.ticket #ticket_sell .shelf .unit .layer.end,
.ticket #ticket_sell .shelf .unit .layer.coming_soon {
	position: relative;
}
.ticket #ticket_sell .shelf .unit .layer.end::before,
.ticket #ticket_sell .shelf .unit .layer.coming_soon::before{
	content: "荳谺｡蜈郁｡梧歓驕ｸ蜿嶺ｻ倥�邨ゆｺ�＞縺溘＠縺ｾ縺励◆";
	position: absolute;
	border-radius: 8px;
	width: 100%;
	height: auto;
	top: 0;
	left: 0;
	margin: auto;
	padding: 1.4em 0;
	color: white;
	text-align: center;
	font-size: 16px;/*
	background-color: rgba(69,52,52,.6)*/
	background: #5B5B5B;
}
.ticket #ticket_sell .shelf .unit .layer.end.spc::before{
	content: "蜈郁｡瑚ｲｩ螢ｲ縺ｯ邨ゆｺ�＞縺溘＠縺ｾ縺励◆";
}
@media screen and (max-width: 768px) {

.ticket #ticket_sell .shelf .unit .layer.end::before{
	font-size: 14px;
}
}

.ticket #ticket_sell .shelf .unit .layer.coming_soon::before{
	content: "Coming Soon";
	background: #c00312;
}
.ticket #ticket_sell .shelf .unit .layer.end a,
.ticket #ticket_sell .shelf .unit .layer.coming_soon a {
	pointer-events: none;
}
.ticket #ticket_sell .shelf .unit .square {
	color: #e60012;
}
.ticket #ticket_sell .shelf .unit .how_to_buy {
	font-weight: bold;
}
.ticket #ticket_sell .shelf .unit div.layer a {
	display: inline-block;
	border-radius: 8px;
	overflow: hidden;
}
.ticket #ticket_sell .shelf .unit div.layer.sold_out a {
	pointer-events: none
}
.ticket #ticket_sell .shelf .unit div.layer.sold_out a img {
	filter: grayscale(100%);
}


.ticket #ticket_sell .shelf.heromarkets .unit {
	display: block;
}
.ticket #ticket_sell .shelf.heromarkets .unit p {
	width: 100%;
}

.ticket #ticket_sell .handling {
	margin-top: 40px;
}

.ticket #ticket_sell .lottery h2 {
	color: #036eb8;
	border-left: 10px solid #036eb8;
}
.ticket #ticket_sell .lottery .shelf {
    border: 1px solid #036eb8;
}
.ticket #ticket_sell .lottery .shelf .unit {
	border: 1px solid #036eb8;
	background-color: #eef8ff;
}
.ticket #ticket_sell .lottery .shelf h3 {
	color: #036eb8;
}
.ticket #ticket_sell .lottery .shelf .unit .square {
	color: #036eb8;
}

.ticket #ticket_sell .pre-sale {
	margin-top: 40px;
}
.ticket #ticket_sell .pre-sale h2 {
	color: #00a600;
	border-left: 10px solid #00a600;
}
.ticket #ticket_sell .pre-sale .shelf {
    border: 1px solid #00a600;
}
.ticket #ticket_sell .pre-sale .shelf .unit {
	border: 1px solid #00a600;
	background-color: #f2faf2;
}
.ticket #ticket_sell .pre-sale .shelf h3 {
	color: #00a600;
}
.ticket #ticket_sell .pre-sale .shelf .unit .square {
	color: #00a600;
}

.ticket #ticket_sell .shelf.sold-out {
	position: relative;
}
.ticket #ticket_sell .shelf.sold-out::before{
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
    justify-content: center;
    align-items: center;
	width: 100%;
	height: 100%;
	color: #fff;
	font-size: 18px;
	letter-spacing: 0.1em;
	font-weight: bold;
	text-align: center;
	background: rgba(0,0,0,.8);
	box-sizing: border-box;
	z-index: 5;
}
.ticket #ticket_sell .pre-sale .shelf.sold-out::before{
	content: "予定枚数に達したため販売を終了いたしました。";
}
.ticket #ticket_sell .lottery .shelf.sold-out::before{
	content: "先行抽選受付は終了いたしました。";
}

.ticket #ticket_sell .shelf.sold-out a{
	pointer-events: none
}

.ticket #ticket_sell .shelf p.note {
	font-size: 81.25%;
	padding: 0.25em 0 1em 0;
}
.ticket #ticket_sell .shelf .img-area {
	text-align: center;
}
.ticket .caution {
	padding: 0.75em 0 2em 2em;
	width: 90%;
	margin: 20px auto;
	text-align: left;
	font-size: 13px;
	line-height: 1.7;
}
.ticket .caution li {
	font-size: 16px;
	padding-left:1em;
	text-indent:-1em;
}    
.ticket .caution li span {
	font-size: 16px;
	font-weight: bold;
}
.ticket .caution p {
	font-size: 81.25%;
}
.ticket .caution .pagetop {
	margin-top: -30px;
	padding-bottom: 0;
}

/* --- satsuei page --- */
#satsuei h1{
	color:#d05afa;
	border-bottom: 1px solid #d05afa;
}
#satsuei h2{
	position: relative;
	margin-top: 50px;
	margin-bottom: 20px;
	padding: 7px 15px;
	background: #efefef;
    text-align: center;
}
.satsuei .detail h2 span {
	position: absolute;
	top: -10px;
	right: 10px;
	display: inline-block;
	padding: 7px 15px;
	color: #555;
	font-size: 14px;
	color: #fff;
	background: #e70014;
	border-radius: 15px;
}
  
.satsuei .detail h2 span::before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -10px;
	border: 10px solid transparent;
	border-top: 10px solid #e70014;
}

#satsuei h2:first-of-type{
	margin-top: 0;
}
.satsuei .sub_title {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}
.satsuei .detail {
	width: 94%;
	text-align: left;
	font-size: 14px;
	margin: 20px auto;
	padding-bottom: 40px;
}
.satsuei .detail img {
	width: 100%;
	height: auto;
}
.satsuei .detail span {
	font-weight: bold;
}
.satsuei table{
	border-top: 1px solid #036eb8;
	margin-bottom: 20px;
}
.satsuei td,
.satsuei th {
	padding: 10px 0 ;
	font-size: 14px;
	border-bottom: 1px solid #036eb8;
}
.satsuei th {
	width: 15em;
}
.satsuei .detail table td span {
	margin-left: 1em;
	font-weight: normal;
}
.satsuei .detail dl dt,
.satsuei .detail dl dd {
float: left;
text-align: left;
margin: 10px 0 0;
}
.satsuei .detail dl dt {
width: 15%;
font-weight: bold;
}
.satsuei .detail dl dd {
	width: 85%;
} 
.satsuei .red{
	color: red;
}
.satsuei .bold{
	font-weight: bold;
}
.satsuei .satsuei_img{
	padding: 0 40px;
	box-sizing: border-box;
}
.satsuei .satsuei_img img{
	width: 100%;
	height: auto;
	margin-bottom: 30px;
}    
.satsuei .column2 {
	display: flex;
	align-items: flex-start;
    justify-content: space-between;
	margin: 10px 0 30px;
}
.satsuei .column2 > div {
	width: 48%;
	text-align: center;
}
.satsuei .detail ul li {
	padding-left: 1em;
	text-indent: -1em;
}


/* --- schedule page --- */
.schedule #title-area > div:first-of-type {
	border-bottom: 1px solid #f0870f;
	padding-bottom: 1em;
}
.schedule h1 {
	color: #f0870f; 
	line-height: initial;
	margin-bottom: 0.5em;
}
.schedule h2{
	color: #f0870f; 
	font-size: 16px;
	font-weight: bold;
}
.schedule h2 + p {
	font-size: 16px;
	font-weight: bold;
	padding-left: 1em;
	margin-bottom: 1em;
}
.schedule p .txt-tco {
	color: #f0870f; 
}
.ticketbtn {
	text-align: center;
	padding: 40px 0 0;
}
.ticketbtn a {
	display: block;
	width: 380px;
	margin: 0 auto;
	overflow: hidden;
	border: 2px solid #e60012;
	border-radius: 8px;
}
.ticketbtn a:hover {
	border: 2px solid #f75c68;
}
.ticketbtn a:hover img {
	opacity: 0.7;
  	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  	filter: alpha(opacity=70);
}

.available p.emp {
	font-size: 112.5%;
	color: #036eb8;
	padding: 0;
	margin: 0 0 0 -0.5em;
}
.available p {
	margin-top: 0.25em;
	line-height: 1.75;
	font-size: 87.5%;
}
.available td {
	font-size: 13px;
	padding: 2px 0;
}

.shop#shop01 {
	margin-top: 40px;
}
.shop h2 {
	background: #b18247;
	padding: 9px 26px;
	margin-bottom: 32px;
}
.shop .unit {
	padding: 0 20px 18px;
}
.shop .unit .left {
	/*width: 340px;*/
}
.shop .unit .right {
	width: 415px;
}
.shop p {
	font-size: 87.5%;
}
.shop .info_shop .left .img-area {
	padding-bottom: 16px;
}
.shop .info_shop .left .img-area p {
	font-size: 75%;
	padding-top: 0.5em;
	width: 323px;
	text-align: right;
}
.shop .info_shop .right p {
	padding-bottom: 2em;
}
.shop .info_shop .right p.note {
	font-size: 75%;
	padding-top: 0.5em;
	padding-bottom: 0;
}
.shop p span.pseudo {
	font-size: 16px;
	color: #036eb8;
	line-height: 1.6;
}
.shop .ticketbtn {
	padding-top: 24px;
	padding-bottom: 0;
}
#contents .shop div.pagetop {
}

/* --- stay page --- */

.stay h1 {
	color: #e95d9d;
	border-bottom: 1px solid #e95d9d;
}
.stay #title-area p {
	color: #e95d9d;
	font-size: 87.5%;
}

.stay #stayplan {
	border: 1px solid #e95d9d;
	background: #fff4f9;
	padding: 24px 64px;
	position: relative;
}
.stay #stayplan .img-area {
	padding: 36px 0 20px 34px;
}
.stay #stayplan p.emp {
	color: #036eb8;
	font-size: 100%;
}
.stay #stayplan p.sub {
	font-size: 87.5%;
	padding-top: 0.25em;
	line-height: 1.7;
	min-height: 140px;
}
.stay #stayplan .left {
	width: 405px;
}
.stay #stayplan .right {
	width: 404px;
}
.stay #stayplan p.note {
	font-size: 81.25%;
	padding-top: 0.5em;
	line-height: 1.4;
}
.stay #stayplan .layer {
	position: absolute;
	top: 270px;
	left:600px;
}
.stay #stayplan .layer p {
	padding: 0.25em 0 0 0.5em;
}



.staytbtn {
	text-align: center;
	padding: 36px 0 20px;
}
.staytbtn a {
	display: block;
	width: 338px;
	margin: 0 auto;
	overflow: hidden;
	border-radius: 8px;
}

.stay #stayplan .box {
  box-shadow:0px 7px 10px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0px 7px 10px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 7px 10px rgba(0, 0, 0, 0.2);
  width: 850px;
  padding:4px; 
  background-color:(0, 0, 0, 0.0);
	margin: 26px auto 36px;
}

/* --- aqua page --- */

.aqua h1 {
	color:#990099;
	border-bottom: 1px solid #990099;
}
.aqua #title-area p {
	color: #990099;
	font-size: 87.5%;
}

.aqua #aquaplan {
	border: 1px solid #990099;
	background: #fff4f9;
	padding: 24px 64px;
	position: relative;
}
.aqua #aquaplan .img-area {
	padding: 36px 0 20px 34px;
}
.aqua #aquaplan p.emp {
	color: #036eb8;
	font-size: 100%;
}

.aqua #aquaplan p.emp2 {
	color: #000000;
	font-size: 100%;
}

.aqua #aquaplan p.sub {
	font-size: 87.5%;
	padding-top: 0.25em;
	line-height: 1.7;
	min-height: 191px;
}
.aqua #aquaplan .left {
	width: 405px;
}
.aqua #aquaplan .right {
	width: 404px;
}
.aqua #aquaplan p.note {
	font-size: 81.25%;
	padding-top: 0.5em;
	line-height: 1.4;
}

.aqua #aquaplan p.note_1 {
	font-size: 85%;
	font-weight:bold;
	padding-top: 0.5em;
	line-height: 1.6;
}

.aqua #aquaplan p.note_2 {
	font-size: 75%;
	padding-top: 0.5em;
	line-height: 1.4;
}


.aqua #aquaplan .layer {
	position: absolute;
	top: 270px;
	left:600px;
}
.aqua #aquaplan .layer p {
	padding: 0.25em 0 0 0.5em;
}



.aquatbtn {
	text-align: center;
	padding: 36px 0 0;
}
.aquatbtn a {
	display: block;
	width: 338px;
	margin: 0 auto;
	overflow: hidden;
	border-radius: 8px;
}

/* --- bottom area --- */
#contents #contact {
	border: 1px solid #0d6fb8;
	padding: 16px 32px;
}
#contents #contact h2 {
	color: #0d6fb8;
	font-size: 112.5%;
	font-weight: bold;
	padding: 0 0 2px 0;
	margin-bottom: 1em;
	background: url(../images/bg_contact.jpg) left bottom no-repeat;
}
#contents #contact p {
	font-size: 81.25%;
}
#contents #contact p.emp {
	color: #444;
	font-size: 125%;
}
#contents .shop #contact h2 {
	margin-bottom: 0;
}
#contents #contact p.emp_note{font-weight: bold; margin-bottom: 0.75em;}
#contents .shop #contact p{
	padding-bottom: 0;
}
#contents #hotels{
	text-align: center;
	padding: 40px 0 30px;
}
#contents div#links{
padding: 36px 0 18px 0;
text-align:center;
	font-size: 75%;
}
#contents div#links a:link,
#contents div#links a:visited{
color:#333333;
text-decoration:none;
}
#contents div#links a:hover,
#contents div#links a:active{
color:#333333;
text-decoration:underline;
}


/* --- restaurant area --- */
.restaurant .wrap-flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.restaurant .wrap-flex li{
	width: 48%;
	display: flex;
}
.restaurant .wrap-flex li:nth-child(3),
.restaurant .wrap-flex li:nth-child(4){
	margin-top: 30px;
}
.restaurant .shop .unit {
    padding: 0 20px 35px;
}

.restaurant .shop h2 {
    color: #fff;
}

.restaurant .shop p {
    padding-bottom: 10px;
}
.restaurant .shop .text-box p:first-child{
	min-height: 2em;
	font-weight: bold;
}

.restaurant .img-area{
	width: 50%;
}
.restaurant .img-area img{
	width: 100%;
	height: auto;
}

.restaurant .text-box{
	width: 50%;
	padding-left: 10px;
	box-sizing: border-box;
}

.restaurant .reserve{
	margin: 30px 0;
}

.restaurant .shop .reserve p {
    padding-bottom: 5px;
}

/* --- notice area --- */
.notice #notice_wapp {
    width: 85%;
    margin: 40px auto;
    font-size: 1.3rem;
    line-height: 1.7;
    text-align: justify;
}    
.notice h1.title { 
    font-size: 25px;
    text-align: center;
    margin: 60px;
}         
.notice h2.title { 
    width: 50%;
    font-size: 18px;
    color: #0d6fb8;
    text-align: center;
    border-top: solid 2px #0d6fb8;
    border-bottom: solid 2px #0d6fb8; 
    margin: 40px auto 20px;
    padding: 10px;
}   
.notice p,
.notice ul li {
    font-size: 16px;
}
.notice ul li {
    padding-left: 16px;
} 
.notice p span.under_red {
    color: #ff0000;
    text-decoration: underline;
} 
.notice span.under_black,
.notice ul li span.under_black {
    color: #000;
    text-decoration: underline;
}


@media screen and (max-width: 768px) {
	#header {
		width:100%;
	}
	#contents {
		width:100%;
		border-left: none;
		border-right: none;
	}
	#footer {
        font-size: 12px;
        padding: 14px 0;
	}
	.sp {display: block;}
	.pc {display: none;}


	/* --- main area --- */
	.article {
		margin-left: 20px;
		margin-right: 20px;
	}

	/* --- head --- */
	#header div {
		width: auto;
	}
	#header .left {
		margin-left: 12px;
	}
	#header .right {
		padding: 14px 12px 0 0;
	}
	/* --- global --- */
	#global {
		width: 100%;
		height: auto;
		display: block;
	}
	#global li {
		width: 100%;
		text-align: center;
		border-left: none;
		border-bottom: 1px solid #fff;
	}
	#global li:first-child{
		border-left:none;
	}
	#global li a{
		font-size: 14px;
		padding: 10px;
	}

	/* --- top page --- */
	.top-page #menu-area {
		padding: 0;
	}
	.top-page #outline .left {
		width: 100%;
		padding: 30px 20px;
		box-sizing: border-box;
	}
	.top-page #outline .right {
		width: 100%;
		padding: 0 20px;
		box-sizing: border-box;
	}
	/* --- comingsoon --- */
	.comingsoon_box {
		width: 90%;
		padding: 80px 20px;
	}
	/* --- ticket page --- */
	#ticket_price #title-area + p {
		margin: 0 0 20px 0 ;
	}
	.ticket #price {
		margin: 0 0 50px;
	}
	.ticket #price .left,
	.ticket #price .right {
		width: 100%;
	}
	.ticket #price .img-area  img {
		width: 100%;
		margin-top: 20px;
	}

	.ticket #ticket_sell {
		padding: 40px 20px 20px 20px;
	}
	.ticket #ticket_sell .shelf .unit {
		padding: 15px;
		display: block;
	}
	.ticket #ticket_sell .shelf .unit p,
	.ticket #ticket_sell .shelf .unit .layer {
		width: 100%;
	}
	.ticket #ticket_sell .shelf .unit .layer {
		margin-top: 15px;
	}
	.ticket #ticket_sell .shelf .unit div.layer a {
		width: 100%;
	}
	.ticket #ticket_sell .shelf .unit div.layer a img {
		width: 100%;
		height: auto;
	}
	.ticket #ticket_sell .shelf p.note {
		font-size: 81.25%;
		padding: 0.25em 0 1em 0;
	}
	.ticket #ticket_sell .shelf .img-area {
		text-align: center;
	}

	.ticket .caution {
		padding: 0.75em 20px;
		width: 100%;
		box-sizing: border-box;
	}

	/* --- satsuei page --- */
    #satsuei h1{
        color:#d05afa;
        border-bottom: 1px solid #d05afa;
    }
    .satsuei .sub_title {
		padding: 0 20px;
    }
    .satsuei .detail {
        width: 100%;
		padding: 0 20px;
		box-sizing: border-box;
    }
    .satsuei .satsuei_img img,
	.satsuei .ticketbtn img {
		width: 100%;
		height: auto;
	}
	.satsuei th {
		width: 10em;
	}
	.satsuei.workshop th {
		width: 13em;
	}
	.satsuei .detail table td span {
		display: block;
		margin-left: 0;
	}
	.satsuei .detail span {
		display: block;
	}
	.satsuei .column2 {
		display: block;
	}
	.satsuei .column2 > div {
		width: 100%;
		margin-bottom: 30px;
	}
	.satsuei .detail h2.goods {
		margin-top: 70px!important;
	}
	.satsuei .detail h2 span {
		position: absolute;
		top: -40px;
		right: 10px;
	}
	.satsuei .detail h2 span::before {
		margin-left: -10px;
		border: 10px solid transparent;
		border-top: 10px solid #e70014;
	}
	

	/* --- schedule page --- */
	.schedule #title-area > div:first-of-type {
		border-bottom: 1px solid #f0870f;
		padding-bottom: 1em;
	}
	.schedule h1 {
		color: #f0870f; 
		line-height: initial;
	}
	.ticketbtn {
		text-align: center;
		padding: 40px 20px 0;
	}
	.ticketbtn a {
		display: block;
		width: 100%;
		margin: 0 auto;
		overflow: hidden;
		border: 2px solid #e60012;
		border-radius: 8px;
	}
	.ticketbtn a img {
		width: 100%;
		height: auto;
	}
	.ticketbtn a:hover {
		border: 2px solid #f75c68;
	}
	.ticketbtn a:hover img {
		opacity: 0.7;
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
		filter: alpha(opacity=70);
	}


	.available p.emp {
		font-size: 112.5%;
		color: #036eb8;
		padding: 0;
		margin: 0 0 0 -0.5em;
	}
	.available p {
		margin-top: 0.25em;
		line-height: 1.75;
		font-size: 87.5%;
	}
	.available td {
		font-size: 13px;
		padding: 2px 0;
	}

	.shop#shop01 {
		margin-top: 40px;
	}
	.shop h2 {
		background: #b18247;
		padding: 9px 26px;
		margin-bottom: 32px;
	}
	.shop .unit {
		padding: 0 20px 18px;
	}
	.shop .unit .left {
		/*width: 340px;*/
	}
	.shop .unit .right {
		width: 415px;
	}
	.shop p {
		font-size: 87.5%;
	}
	.shop .info_shop .left .img-area {
		padding-bottom: 16px;
	}
	.shop .info_shop .left .img-area p {
		font-size: 75%;
		padding-top: 0.5em;
		width: 323px;
		text-align: right;
	}
	.shop .info_shop .right p {
		padding-bottom: 2em;
	}
	.shop .info_shop .right p.note {
		font-size: 75%;
		padding-top: 0.5em;
		padding-bottom: 0;
	}
	.shop p span.pseudo {
		font-size: 16px;
		color: #036eb8;
		line-height: 1.6;
	}
	.shop .ticketbtn {
		padding-top: 24px;
		padding-bottom: 0;
	}
	#contents .shop div.pagetop {
	}

	/* --- bottom area --- */
	#contents #contact {
		border: 1px solid #0d6fb8;
		padding: 16px 32px;
	}
	#contents #contact h2 {
		color: #0d6fb8;
		font-size: 112.5%;
		font-weight: bold;
		padding: 0 0 2px 0;
		background: url(../images/bg_contact.jpg) left bottom no-repeat;
	}
	#contents #contact p {
		font-size: 81.25%;
	}
	#contents #contact p.emp {
		color: #444;
		font-size: 125%;
		/*padding: 1em 0 0.75em 0;*/
		padding: 1em 0 0 0;
	}

	#contents .shop #contact h2 {
		margin-bottom: 0;
	}

	#contents #contact p.emp_note{font-weight: bold; margin-bottom: 0.75em;}

	#contents .shop #contact p{
		padding-bottom: 0;
	}

	#contents #hotels{
		text-align: center;
		padding: 40px 0 30px;
	}

	#contents div#links{
	padding: 36px 0 18px 0;
	text-align:center;
		font-size: 75%;
	}

	#contents div#links a:link,
	#contents div#links a:visited{
	color:#333333;
	text-decoration:none;
	}
	#contents div#links a:hover,
	#contents div#links a:active{
	color:#333333;
	text-decoration:underline;
	}

	/* 郢晢ｽｬ郢ｧ�ｹ郢晏現ﾎ帷ｹ晢ｽｳ郢晏｣ｹ�ｽ郢ｧ�ｸ */
	.restaurant .wrap-flex{
		display: block;
	}
	.restaurant .wrap-flex li{
		width: 100%;
		display: block;
	}
	.restaurant .wrap-flex li{
		margin-top: 30px;
	}


	.restaurant .shop h2 {
		color: #fff;
		font-size: 20px;
	}
	.restaurant .shop .text-box p:first-child{
		min-height: auto;
	}
	.restaurant .img-area{
		width: 100%;
	}
	.restaurant .img-area img{
		width: 100%;
		height: auto;
	}

	.restaurant .text-box{
		width: 100%;
		padding-left: 10px;
		padding-right: 10px;
		margin-top: 15px;
		box-sizing: border-box;
	}

	/* --- notice area --- */
	.notice #notice_wapp {
		width: 100%;
		padding: 0 20px;
		box-sizing: border-box;
	}
	.notice h1.title { 
		font-size: 18px;
		text-align: center;
		margin: 40px 0;
	}
	.notice h2.title { 
		width: 100%;
		font-size: 16px;
		margin: 30px auto 10px;  
		box-sizing: border-box;
	}
	.notice p,
	.notice ul li {
		font-size: 13px;
	}
	.notice ul li {
		padding-left: 12px;
	}    
	
}

#move{
 margin: 40px auto;
 display: flex;
 justify-content: center;
 align-items: flex-start;
}
#move > div{
	width: 46%;
	margin: 0 2%;
	aspect-ratio: 16 / 9;
}
#move iframe{
 display: block;
 margin: 0 auto;
 width: 100%;
 height: 100%;
}


@media screen and (max-width: 768px) {
#move{
 margin: 40px auto;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
#move iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
}

.item-list{
	margin: 40px auto;
}
.item-list li + li{
	line-height:0;
	margin-top: 30px;
}
.item-list li img{
	width: 100%;
	height: auto;
}


.lyt_ph_box{
	padding: 0 0px;
	box-sizing: border-box;
	margin-top: 40px;
}
.lyt_ph_box img{
	width: 100%;
	height: auto;
	margin-bottom: 30px;
}    

/*25.03.27 追加*/

.lyt-box-res{
	box-sizing: border-box;
	padding: 20px;
}

.lyt-box-res .lyt-intro{
	display: flex;
}


.lyt-box-res .lyt-intro .lyt-ph{
	width: 60%;
}

.lyt-box-res .lyt-intro .lyt-ph img{
	width: 100%;
	height: auto;
}
.lyt-box-res .lyt-intro .lyt-doc{
	box-sizing: border-box;
	width: 40%;
	padding-left: 20px;
}
.lyt-box-res .lyt-intro .lyt-doc .lyt-hdg,
.lyt-box-res .box-lyt-gw .lyt-hdg{
	font-size: 32px;
	font-weight: bold;
	/*color: #fe810e;*/
}
.lyt-box-res .lyt-intro .lyt-doc .lyt-hdg span,
.lyt-box-res .box-lyt-gw .lyt-hdg span{
	display: block;
	font-size: 24px;
	font-weight: bold;
}
.lyt-box-res .box-lyt-gw{
	box-sizing: border-box;
	border: 4px solid #f9d809;
	margin-top: 20px;
	padding: 12px;
}
.lyt-box-res .box-lyt-gw .lyt-hdg{
	font-size: 24px;
}


@media screen and (max-width: 768px) {

.lyt-box-res .lyt-intro{
	display: block;
}

.lyt-box-res .lyt-intro .lyt-ph,
.lyt-box-res .lyt-intro .lyt-doc{
	width: 100%;
}
.lyt-box-res .lyt-intro .lyt-doc{
	margin-top: 1em;
}
.lyt-box-res .lyt-intro .lyt-doc .lyt-hdg,
.lyt-box-res .box-lyt-gw .lyt-hdg{
	font-size: 18px;
}
.lyt-box-res .lyt-intro .lyt-doc .lyt-hdg span,
.lyt-box-res .box-lyt-gw .lyt-hdg span{
	font-size: 14px;
}
}