
/*
link */
#info a:link {
	text-decoration:none;
	color:#fff;
}
#info a:visited {
	text-decoration:none;
	color:#fff;
}
#info a:active {
	text-decoration:none;
	color:#fff;
}
#info a:hover {
	text-decoration:none;
	color:#fff;
}

/*	top layout
============================== */


@media all and (min-width: 768px) {
.idx footer {
	background-color: #C5000A;
	padding: 50px 0;
}
.idx div.wrap {
	width: 980px;
	margin: 0 auto;
}

.idx div.left {
	float: left;
	width: 640px;
}

.idx div.right {
	width: 300px;
	float: right;
	background-color: #C5000A;
}
}

@media all and (max-width: 767px) {
.idx div.right {
	background-color: #C5000A;
}
}


/*　header
============================== */

div.said p {
background-repeat: no-repeat;
text-indent:100%; white-space:nowrap; overflow:hidden;
position: absolute;
}

@media all and (min-width: 768px) {
div.said p {
background-size: 190px 500px;
width: 190px;
height: 500px;
right: 60px;
top: 185px;
}

.idx #pagetop {
border-top: 46px solid #c5000a;
}

.idx #pagetop div.main {
background-image: url(../img/header_2.jpg);
background-repeat: no-repeat;
width: 980px;
height: 1120px;
margin: -46px auto 0;
position: relative;
}

.idx #pagetop div.main h1 {
text-indent:100%; white-space:nowrap; overflow:hidden;
}
}



/*　menu
============================== */

@media all and (min-width: 768px) {

.idx div.menu {
width: 530px;
height: 260px;
position: absolute;
left: 0;
top: 405px;
}

.idx div.menu li {
background-color: #fff;
width: 125px;
height: 125px;
border:3px solid #c5000a;
box-sizing: border-box;
float: left;
margin-right: 10px;
margin-bottom: 10px;
}

.idx div.menu li:hover {
background-color: #f1eeeb;
border:3px solid #6d5d44;
}

.idx div.menu li.bgred {
background-color: #c5000a;
}

.idx div.menu li.bgred:hover {
background-color: #6d5d44;
}

.idx div.menu li.about,
.idx div.menu li.english {
margin-right: 0;
}

.idx div.menu li a {
display: block;
width: 125px;
height: 125px;
margin-left: -3px;
margin-top: -3px;
position:relative;
}

.idx div.menu li a span {
background-image: url(../img/menu01.png);
background-repeat: no-repeat;
text-indent:100%; white-space:nowrap; overflow:hidden;
display: block;
position:absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
}

.idx div.menu li a:hover span {
background-image: url(../img/menu02.png);
}

.idx div.menu li.intro a span {
background-position: -220px -55px;
width: 68px; height: 43px;
}

.idx div.menu li.summary a span {
background-position: -89px top;
width: 74px; height: 19px;
}

.idx div.menu li.ticket a span {
background-position: -182px top;
width: 66px; height: 18px;
}

.idx div.menu li.about a span {
background-position: -260px top;
width: 91px; height: 42px;
}

.idx div.menu li.atelier a span {
background-position: -361px top;
width: 104px; height: 41px;
}

.idx div.menu li.locus a span {
background-position: -97px -56px;
width: 104px; height: 42px;
}

.idx div.menu li.etc a span {
background-position: left -29px;
width: 86px; height: 70px;
}

.idx div.menu li.english a span {
background-position: -307px -81px;
width: 68px; height: 17px;
}

.idx div.menu li.song a span {
background-position: -100px bottom;
width: 70px; height: 17px;
}

.idx div.menu li.massage a span {
background-position: left bottom;
width: 84px; height: 41px;
}

}

/*	footer
============================== */
.idx article h2 {
	font-weight: bold;
	letter-spacing: 3px;
	font-size: 22px;
	color: #fff;
	position: relative;
	z-index: 1;
}

.idx article h2 span::after {
	position: absolute;
	top: 35px;
	left: 0;
	content: '';
	width: 100%;
	height: 3px;
	background-color: #fff;
	z-index: -1;
}

/*	spot


@media all and (min-width: 768px) {
.idx div.spot {
	position: absolute;
	left: 50%;
	top: 639px;
	margin-left: -490px;
}

.idx div.spot a {
	display: block;
	width: 395px;
    height: 222px;
    text-indent: 110%;
    white-space: nowrap;
    overflow: hidden;
	background-color: rgba(116,116,116,1.00);
    background-image: url(../img/spot_icon_top.svg);
    background-repeat: no-repeat;
    background-position: left top;
}
}
============================== */
/*	tkboo
============================== */
@media all and (min-width: 768px) {
.idx div.tkboo {
	position: absolute;
	left: 50%;
	top: 881px;
	margin-left: -490px;
}

.idx div.tkboo a {
	width: 320px;
    height: 160px;
}
}


/*	info
============================== */
.idx article#info ul li dl dt {
	float:left;
}

.idx article#info ul li dl dd {
	padding-left:7em;
	letter-spacing: 1px;
}

.idx article#info ul li:nth-child(even){
	background-color: #d1333b;
}

.idx article#info ul li:nth-child(odd){
	background-color: #c5000a;
}

.idx article#info ul li a:hover {
	background-color: #a5000c;
}

.idx article#info ul li a, .idx article#info ul li div {
	color: #fff;
	display: block;
	text-align: justify;
}

.idx article#info ul {
	font-size: 15px;
	overflow: auto;
}

@media all and (min-width: 768px) {
.idx article#info ul {
	overflow: auto;
	margin-top: 15px;
}

.idx article#info ul li {
	line-height:1.5;
}

.idx article#info ul li a, .idx article#info ul li div {
	text-decoration:none;
}

.idx article#info ul li dl dt {
	color: #fff;
}

.idx article#info ul li dl dt {
	float:left;
}

.idx article#info ul li a, .idx article#info ul li div {
	padding: 20px 30px;
}
}

@media all and (max-width: 767px) {
.idx article#info {
background-color: #c5000a;
padding: 20px 30px;
margin-bottom: 20px;
}

.idx article h2 {
text-align: center;
margin-bottom: 16px;
}

.idx article#info ul li a, .idx article#info ul li div {
	padding: 10px 20px;
	font-size: 13px;
    line-height: 1.5;
	letter-spacing: 1px;
}
.idx article#info ul {
	height: 360px;
}
}

/*　smp header
============================== */
@media all and (max-width: 767px) {
/*	main  size  */
.idx div.smpmain {
	background-image:url(../img/smpheader.jpg);
	background-size:cover;
	height:0;
	/* 縦÷横 */
	padding-top:272.65625%;
	position: relative;
}

.idx div.smpmain h1 {
	display: block;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	text-indent:100%; white-space:nowrap; overflow:hidden;
	position: relative;
}

/*	said  size  */
div.said {
	position: absolute;
	width: 38.739583%;
	height: 58.877746%;
	left: 56.713542%;
	top: 31.23209169054441%;
}

div.said01 p { background-image: url(../img/said01.png); }
div.said02 p { background-image: url(../img/said02.png); }
div.said03 p { background-image: url(../img/said03.png); }
div.said04 p { background-image: url(../img/said04.png); }
div.said05 p { background-image: url(../img/said05.png); }
div.said06 p { background-image: url(../img/said06.png); }
div.said07 p { background-image: url(../img/said07.png); }
div.said08 p { background-image: url(../img/said08.png); }
div.said09 p { background-image: url(../img/said09.png); }
div.said10 p { background-image: url(../img/said10.png); }

div.said p {
	background-size:cover;
	height:0;
	/* 縦÷横 */
	padding-top:263.157894736842%;
	position: relative;
}

div.said p span {
	display: block;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	text-indent:100%; white-space:nowrap; overflow:hidden;
}
}



/*	catalog
============================== */

article.catalog {
	background-color: #fff;
}
@media all and (min-width: 768px) {
	article.catalog {
		padding: 25px;
		margin-bottom: 40px;
}
}
@media all and (max-width: 767px) {
	article.catalog {
		padding: 20px;
		margin-bottom: 20px;
}
}

figure {
}
figure p span,
figure p span img {
	display:block;
}
figure p {
	margin-bottom:0.25em;
}
figure figcaption {
	font-size:62.5%;
	line-height:1.5;
}
@media all and (min-width: 768px) {
figure {
	margin:0 auto 20px;
}
figure {
	width:440px;
}
figure p span,
figure p span img {
	width:440px;
	height:319px;
}
}

@media all and (max-width: 767px) {
figure {
	margin:0 auto 15px;
}
section figure {
	width:260px;
}
figure p span,
figure p span img {
	width:260px;
	height:189px;
}
figure p span {
	background-size:cover;
}
}
