@charset "UTF-8";
/* CSS Document */

html, body {
	width: 100%;
	height: 100%;
	background-color: #000000;
	-webkit-text-size-adjust: 100%;
}

.allWrp {
	width: 100%;
	min-height: 100%;
	position: relative;
}

.fullScr {
	width: 100%;
	min-height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	background-size: contain;
	box-sizing: border-box;
    background-color: #000000;
}

.bg {
	width: 100%;
	min-height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	background-size: contain;
	box-sizing: border-box;
	background-repeat: no-repeat;
	background-position: center;
    background-color: #000000;
}

.wrp_movie {
	display: block;
	width: 100%;
	max-width: 1000px;
	margin: 2vh auto 4vh;
}

a {
	color: #F77B22;
}

.red {
	color: #D6171A !important;
}

#toppage .bg.current {
	background-image: url("../images/top/queen_main_bg.jpg");
}

#guidepage .bg.current {
	background-image: url(../images/slideshow/bgimg2.jpg);
}

#pricepage .bg.current {
	background-image: url(../images/slideshow/bgimg3.jpg);
}

#contactpage .bg.current {
	background-image: url(../images/slideshow/bgimg4.jpg);
}

#thankspage .bg.current {
	background-image: url(../images/slideshow/bgimg5.jpg);
}

/*画像フィット*/
.fullScr h1 img,
#gmLinks li a img,
#scrollBtn a img,
#btt a img,
#ftrLogo a img,
#conceptWrp figure img,
#buildingWrp figure img,
.galleries a > img {
	width: 100%;
	height: auto;
}

#gmLinks li#logo_menuBar a img {
    height: 100%;
    width: auto;
} 

.sp { display: none;}

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

.fullScr h1 {
	font-family: MavenReg, Arial, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	letter-spacing: 0.05em;
	font-size: 5.2rem;
	line-height: 1.2em;
	color: #fff;
	text-align: center;
	width: 80%;
	max-width: 800px;
	margin: 0px auto;
	position: relative;
}
.fullScr h1 img {
	display: block;
	width: 100%;
/*	max-width: 350px;*/
	margin: 0px auto;
}

.pageHdr {
	position: relative;
	width: 100%;
}

.grandMenu {
	width: 100%;
	z-index: 1;
	position: relative;
}

#gmLinks {
	text-align: right;
	padding-right: 20px;
}

#gmLinks li {
	display: inline-block;
}

#gmLinks li a {
	display: block;
	height: 60px;
	padding: 0px 20px;
	font-family: MavenBld, Arial, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.6rem;
	line-height: 60px;
	text-align: center;
	vertical-align: middle;
	color: #fff;
}

#gmLinks li.snsMenu a {
	width: 20px;
}

#gmLinks li a img {
	position: relative;
	top: -2px;
}

#scrollBtn {
	width: 100%;
	position: absolute;
	z-index: 1;
}

#scrollBtn a {
	display: block;
	width: 60px;
	margin: 0px auto;
}

#pageFtr {
	position: relative;
	z-index: 1;
	padding-top: 100px;
	background-color: #180002;
}

#btt {
	width: 100%;
	margin-bottom: 60px;
}

#btt a {
	display: block;
	width: 72px;
	margin: 0px auto;
}

#ftrLogo {
	box-sizing: border-box;
	width: 100%;
	background: url("../images/base/rep_ftr.jpg") repeat-x left top;
	background-size: contain;
	height: 200px;
	padding-top: 50px;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.20);
}

#ftrLogo a {
	display: block;
	width: 45%;
	max-width: 250px;
	margin: 0px auto;
}

#copyright {
	background-color: #180002;
	color: #666666;
	font-size: 1.1rem;
	text-align: center;
	line-height: 1.5em;
	font-family: MavenReg, Arial, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	letter-spacing: 0.1em;
    padding: 1em 0px;
}


/*コンテンツ*/

.anchor {
	position: relative;
	top: -120px;
}


#contWrp {
	position: relative;
}

.contBlk {
/*	background-image: linear-gradient(45deg, rgba(129,101,88,1) 5%, rgba(92,67,56,0.95) 5%, rgba(92,67,56,0.95) 45%, rgba(129,101,88,1) 45%, rgba(129,101,88,1) 55%, rgba(92,67,56,0.95) 55%, rgba(92,67,56,0.95) 95%, rgba(129,101,88,1) 95%);
	background-repeat: repeat;
	background-size: 10px 10px;*/
/*	background-color: rgba(0,0,0,0.85);*/
	background: url("../images/top/queen_main_bg_blur_blue.jpg") no-repeat center center;
	background-size: contain;
	background-attachment: fixed;
	width: 100%;
	margin: 0px auto 200px;
	box-sizing: border-box;
	padding: 100px 0px;
	z-index: 1;
	box-shadow: 0px 2px 20px rgba(0,0,0,0.20);
}
.contBlk.pageBtmBlk {
	margin-bottom: 0px;
}

.contBlk .inWrp {
	width: 100%;
	max-width: 1000px;
	margin: 0px auto;
	position: relative;
}

.blkHdr h2 {
	font-size: 4rem;
    line-height: 1.2em;
	margin-bottom: 0.4em;
	font-family: MavenReg, Arial, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	letter-spacing: 0.05em;
    color: #FFFFFF;
}

.blkHdr h2 span {
	font-size: 1.5rem;
	color: #FFFFFF;
	display: inline-block;
	letter-spacing: normal;
}

.blkHdr.center h2 {
	text-align: center;
}

.blkHdr.center h2 span {
	display: block;
	padding-top: 1.2em;
}

.blkHdr.left span {
	margin-left: 1em;
}

#infoList {
	width: 94%;
	max-width: 900px;
	margin: 0px auto;
	position: relative;
}

#infoList li {
	margin-bottom: 1px;
	background-color: rgba(24,24,24,0.88);
}

.newsTtlBlk {
	position: relative;
}

.newsDate,
.newsTtlBlk h3,
.ocBtn {
	height: 60px;
	box-sizing: border-box;
}

.newsDate {
	font-family: MavenBld, Arial, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.8rem;
	line-height: 60px;
	color: #FFFFFF;
	background-color: #AC0021;
	float: left;
	width: 15%;
	text-align: center;
}

.newsTtlBlk h3 {
	box-sizing: border-box;
	height: 60px;
	line-height: 1.4em;
	padding-top: 1em;
	font-weight: bold;
	color: #AC0021;
	padding: 1.5em 60px 0px 20px;
	margin-left: 15%;
	background-color: #000000;
/*	cursor: pointer;*/
}

/*.newsTtlBlk h3:hover {
	opacity: 0.7;
}*/

.ocBtn {
	position: absolute;
	right: 0px;
	top: 0px;
	width: 60px;
	background-color: #f6f5f1;
	cursor: pointer;
	padding: 20px 0px 0px 20px;
}
.ocBtn:hover {
	opacity: 0.7;
}

.ocBtn img {
	width: 20px;
	height: auto;
}

.ocBtn img.iconMinus { display: none;}
.ocBtn.open img.iconMinus { display: inline;}

.ocBtn img.iconPlus { display: inline;}
.ocBtn.open img.iconPlus { display: none;}

.newsBody {
	padding: 20px;
	color: #D0D0D0;
	margin-left: 15%;
	display: none;
}
.newsBody.open {
	display: block;
}
.newsBody p {
	margin-bottom: 1em;
}
.newsBody p strong {
	color: #EDEDED;
}

.wrp_infoImg {
    margin-bottom: 1em;
}

.wrp_infoImg img {
    display: inline-block;
    margin: 0px 10px 10px 0px;
}


/*コンテンツ共通クラス*/

.txt_title {
	font-size: 2.5rem;
    line-height: 1.6em;
	font-weight: bold;
	color: #AC0021;
	margin-bottom: 1em;
}
.txt_title span {
	font-size: 0.6em;
	line-height: 1.4em;
	color: #ffdb41;
}

.btn {
	display: block;
    color: #FFFFFF;
    background-color: #88d200;
    width: fit-content;
    padding: 0.3em 1em;
    border-radius: 5px;
    box-shadow: 0px 0px 10px 0px #88d200;
}

@media (max-width:425px) {
	.btn {
		width: 90%;
		margin: 0px auto 0.5em;
		text-align: center;
	}
}

.txt_body p,
.txt_body ul li {
	color: #fffef6;
	margin-bottom: 1em;
}

.txt_body ul.the_list {
    list-style-type: disc;
    list-style-position: outside;
    margin-left: 1.5em;
}

/*コンセプト*/

#conceptWrp figure {
	display: block;
	width: 100%;
	max-width: 450px;
	float: left;
	margin-right: 50px;
}

#conceptWrp .txtBlk {
	width: 96%;
	max-width: 450px;
	float: left;
	margin: 0px auto;
}

/*アクセス*/

#accessWrp .inWrp {
	max-width: none;
}

#map {
	width: 100%;
	height: 500px;
	margin: 0px auto 50px;
	border: 1px solid #d1d1d1;
	box-sizing: border-box;
}

#accessWrp .inBlk {
	max-width: 900px;
	width: 96%;
	margin-left: auto;
	margin-right: auto;
}

#address {
	margin-bottom: 50px;
}

#address dl,
#priceWrp dl,
#castWrp dl,
#staffWrp dl {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: stretch
}

/*#address dl dt,
#priceWrp dl dt,
#castWrp dl dt,
#staffWrp dl dt {
	float: left;
	width: 12%;
	clear: both;
	font-size: 1.4rem;
	margin-bottom: 1em;
}

#address dl dd,
#priceWrp dl dd,
#castWrp dl dd,
#ticketWrp dl dd,
#staffWrp dl dd {
	float: left;
	width: 88%;
	margin-bottom: 1em;
    color: #FFFFFF;
}*/

#address dl dt,
#priceWrp dl dt,
#castWrp dl dt,
#staffWrp dl dt {
	box-sizing: border-box;
	width: 24%;
/*	clear: both;*/
	font-size: 1.4rem;
	margin-bottom: 1em;
	border-bottom: 1px dashed #4d4d4d;
	padding-bottom: 0.5em;
	margin-right: 1%;
	text-align: right;
	padding-right: 2em;
}

#address dl dd,
#priceWrp dl dd,
#castWrp dl dd,
#ticketWrp dl dd,
#staffWrp dl dd {
	box-sizing: border-box;
	width: 75%;
	margin-bottom: 1em;
    color: #FFFFFF;
	border-bottom: 1px dashed #4d4d4d;
	padding-left: 2em;
	padding-bottom: 0.5em;
}


/* スポンサー */

.sponsorList {
	display: flex;
	justify-content: center;
	align-items: stretch;
}

.sponsorList li {
	width: 30%;
	margin-top: 0;
	margin-left: calc((10% / 3) / 2);
	margin-right: calc((10% / 3) / 2);
	margin-bottom: 20px;
}

.sponsorList li a {
	display: block;
	color: #FFFFFF;
}

.sponsorList li img {
	display: block;
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}


/* メインビジュアルブロック */

#movieWrp .blkHdr h2 img {
	width: 100%;
	height: auto;
	margin: 0px auto 3vh;
}

#movieWrp .inWrp p {
	color: #FFFFFF;
	font-size: 1.4em;
	line-height: 1.8em;
	width: 80%;
	margin: 0px auto 2em;
}


/* キャストリスト */

.castList {
	display: flex;
	flex-wrap: wrap;
/*	justify-content: flex-start;*/
	justify-content: center;
	align-content: stretch;
}

.cast {
	box-sizing: border-box;
/*	width: calc(100% / 3);*/
	width: 100%;
	margin-bottom: 6vh;
	text-align: center;
	padding: 0px 15px;
}

@media (max-width:425px) {

/*	.cast {
		width: 50%;
	}*/
}

.ttl_castList {
	color: #FFFFFF;
	font-size: 1.3em;
	font-weight: bold;
	line-height: 1.6em;
	margin-bottom: 0.5em;
	position: relative;
}

.ttl_castList::after {
	content: '. . . . . . . . . . .';
	font-size: 1rem;
	font-weight: bold;
	line-height: 2em;
	text-align: center;
	display: block;
}

.body_castList {
	color: #fcdb88;
	line-height: 2em;
}

/*プロフィール*/

.box {
    display: flex;
    justify-content: space-between;
    margin-bottom: 3vh;
}

.profbox .txtbox {
    width: 60%;
}

.profbox .imgbox {
    width: 30%;
}

.bookbox .txtbox {
    width: 75%;
}

.bookbox .imgbox {
    width: 21%;
}

.fitimg {
    width: 100%;
    height: auto;
}


/*ガイドページ*/



#buildingWrp .contents {/*
	min-height: 650px;*/
	position: relative;
}

#buildingWrp .contents figure {/*
	position: absolute;
	right: 0;
	top: 0;*/
	max-width: 700px;
	width: 96%;
	margin: 0px auto;
}

#buildingWrp .contents .txt_body {
	width: 350px;
	margin-left: 50px;
}

#buildingWrp .blkHdr,
#interior .blkHdr,
#furniture .blkHdr,
#guideline .inWrp {
	width: 96%;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

.galleries a {
	display: block;
	float: left;
	width: 20%;
	box-sizing: border-box;
	padding-right: 1px;
	padding-bottom: 1px;
	position: relative;
	cursor: pointer;
}

.galleries a:hover {
	opacity: 0.8;
}
.galleries a:hover::after {
	content: url(../images/unders/icon_loupe.svg);
	position: absolute;
	width: 20px;
	height: auto;
	left: 45%;
	top: 45%;
}

#interior {
	margin-bottom: 70px;
}

.list_topLV li,
.list_secondLV li {
	position: relative;
	padding-left: 1.5em;
}

.list_secondLV li {
	margin-left: 1em;
}

.list_topLV li::before,
.list_secondLV li::before {
	width: 14px;
	height: 14px;
	position: absolute;
	left: 0px;
	top: 1px;
}

.list_topLV li::before {
	content: url(../images/unders/icon_listTPLV.svg);
}
.list_secondLV li::before {
	content: url(../images/unders/icon_listSCLV.svg);
}


/*プライス*/

#priceWrp .inWrp,
#notice .inWrp,
#cancel .inWrp,
#formWrp .inWrp,
#aboutreservationWrp .inWrp,
#availavilityWrp .inWrp .blkHdr,
#availavilityWrp .inWrp .contents p {
	width: 96%;
	max-width: 900px;
	margin: 0px auto;
}

#priceWrp dl {
	margin-bottom: 10px;
}

.priceTbl {
	width: 100%;
}
.priceTbl,
.priceTbl th,
.priceTbl td {
/*	border-collapse: collapse;*/
	border: 1px solid transparent;
	box-sizing: border-box;
	background-clip: padding-box;
}

.priceTbl th {
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	color: #AC0021;
	background-color: #1D1D1D;
	padding: 18px 0px 17px;
	width: 30%;
}

.priceTbl td {
	font-size: 1.6rem;
	color: #999999;
	background-color: #383838;
	padding: 13px 20px 13px;
}

.priceTbl td a {
	word-break: break-all;
}

.priceTbl td p {
	margin-bottom: 1em;
}

.priceTbl td p.addinfo,
.priceTbl td span.addinfo {
	font-size: 1.2rem;
	color: #494949;
}

.priceTbl td strong {
	display: block;
	margin-bottom: 0.5em;
	font-size: 1.15em;
}

.priceTbl tr.caution td {
	background-color: #fff;
	text-align: center;
	font-size: 1.4rem;
}

.priceTbl tr.caution td img.full_range {
	width: 100%;
	height: auto;
	display: block;
	margin: 0px auto;
}

.priceTbl tr.caution td img.full_range.img_option {
	max-width: 754px;
}

.priceTbl tr.caution td img.full_range.sp {
	display: none;
}


.note {
	text-align: right;
	font-size: 1.2rem;
	padding: 10px 0px 0px;
    color: #FFFFFF;
}


/*予約・問い合わせ*/


#google_calendar {
	padding-top: 30px;
}

#toFormLinks {
	position: relative;
	width: 80%;
	max-width: 800px;
	margin: 0px auto;
}

#toFormLinks li {
	float: left;
	box-sizing: border-box;
	width: 32%;/*
	width: 47.5%;*/
	background-color: #fff;
	padding-right: 10%;
	height: 60px;
	position: relative;
	margin-right: 2%;
}

#toFormLinks li:last-child {
	margin-right: 0;
}


/*
#toFormLinks li:first-child {
	margin-right: 5%;
}

#toFormLinks li#checkReserve {
	float: none;
	margin: 0px auto;
	clear: both;
}*/

#toFormLinks li a {
	display: block;
	height: 60px;
	line-height: 60px;
	text-align: center;
	color: #2f2b2b;
	font-size: 2.1rem;
	font-weight: bold;
}

#toFormLinks li a span {
	width: 70px;
	position: absolute;
	right: 0;
	top: 0;
	background-color: #2f2b2b;
}

#toFormLinks li a span img {
	width: 40%;
}

#formChanger {
	margin-bottom: 30px;
}

#formChanger li {
	float: left;
	width: 50%;
	box-sizing: border-box;
	padding-right: 1px;
	cursor: pointer;
}
#formChanger li:hover {
	opacity: 0.7;
}

#formChanger li p {
	background-color: #f6f5f1;
	color: #4d4a4a;
	text-align: center;
	height: 60px;
	line-height: 60px;
	font-size: 1.6rem;
}

#formChanger li.current p {
	background-color: #e7e6e1;
}

.formBox h3 {
	font-size: 1.8rem;
	font-weight: bold;
	color: #4d4a4a;
	margin-bottom: 1em;
}

.formBox p.txt_body {
	font-size: 1.2rem;
}

.indis {
	color: #DA3818;
	font-size: 1.2rem;
}

.forms {
	padding: 30px 0px;
}

.formDL { margin-bottom: 50px;}

.formDL dt {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 0.5em;
	color: #4d4a4a;
}

.formDL dd {
	font-size: 1.4rem;
	margin-bottom: 1.5em;
}
.formDL dt span.note {
	font-size: 1.2rem;
	font-weight: normal;
/*	color: #959595;*/
}

input[type="text"],
textarea,
input[type="date"] {
	background-color: #f8f8f8;
	box-sizing: border-box;
	border: 1px solid #DCDCDC;
	padding: 10px 3px;
	font-size: 1.6rem;
	border-radius: 2px;
}

.wide_w,
textarea {
	width: 100%;
}

.wide_m {
	width: 50%;
}

.wide_n {
	width: 25%;
}

.wide_t {
	width: 12.5%;
}

textarea { height: 120px;}

select {
	margin-right: 20px;
}


.formBtn {
	box-sizing: border-box;
	background-color: #4d4a4a;
	color: #fff;
	border: none;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
	height: 60px;
	line-height: 60px;
	border-radius: 2px;
	cursor: pointer;
}
.formBtn:hover { opacity: 0.7;}

.formBtn.single {
	display: block;
	margin: 0px auto;
	width: 80%;
}

.btnWrp {
	width: 80%;
	margin: 0px auto;
	text-align: center;
}

.formBtn.double {
	display: inline-block;
	width: 30%;
	margin-right: 3%;
	margin-bottom: 20px;
}
.formBtn.double:last-child {
	margin-right: 0;
}

.ppWrp {
	width: 100%;
	background-color: #f8f8f8;
	box-sizing: border-box;
	border: 1px solid #DCDCDC;
	padding: 20px 20px;
	font-size: 1.4rem;
	border-radius: 2px;
	height: 270px;
	overflow: auto;
	margin: 0px auto 30px;
}

.ppWrp h4 {
	font-size: 1.6rem;
	text-align: center;
}

.ppWrp ol > li {
	list-style: outside decimal;
	margin-left: 20px;
	margin-bottom: 1.2em;
}

.ppWrp ul li {
	list-style: outside disc;
	margin-left: 2em;
}

.pp_agree  {
	display: block;
	text-align: center;
	font-size: 1.6rem;
	margin-bottom: 50px;
}

.formBox {
	display: none;
}

.formBox.current {
	display: block;
}

#confirmWrp .inWrp {
	width: 96%;
	max-width: 900px;
	margin: 0px auto;
}

#confirmWrp table {
	margin-bottom: 50px;
}

#thanksWrp .contents {
	min-height: 200px;
	text-align: center;
}

#thanksWrp .contents h3 {
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 30px;
	padding-top: 30px;
}

#thanksWrp .contents p {
	margin-bottom: 1.5em;
}


.messageDisplay {
	padding-top: 50px;
}

.messageDisplay .txt_title {
	text-align: center;
	margin-bottom: 2em;
}

.messages {
	margin-bottom: 50px;
	text-align: center;
}

.messages p.error_messe {
	color: #D91B1E;
	line-height: 2em; 
}


/*メニューバー固定*/

#gmLinks {
	width: 100%;
	height: 60px;
	position: relative;
	padding-right: 2.2%;
	box-sizing: border-box;
}
#gmLinks.scr {
	position: relative;
	background-color: transparent;
}

#gmLinks.fix {
	position: fixed;
	background-color: rgba(0,0,0,0.85);
	top: 0;
	left: 0;
	z-index: 10;
	box-shadow: 0px 1px 10px rgba(0,0,0,0.30);
}

#gmLinks.fix li a {
/*	color: #4d4a4a;*/
    color: #D6DBE2;
}

#gmLinks li#logo_menuBar {
	width: 20%;
	max-width: 250px;
	position: absolute;
	left: 20px;
	top: 0px;
}

#gmLinks li#logo_menuBar a img {
    height: 100%;
    width: auto;
}

#gmLinks li a img.fix { display: none;}
#gmLinks.scr li a img.fix { display: none;}
#gmLinks.fix li a img.scr { display: none;}
#gmLinks.fix li a img.fix { display: inline;}



.clms {
	display: flex;
	justify-content: flex-start;
}

.item_image {
	width: 30%;
	margin-right: 30px;
	margin-bottom: 3vh;
}
.item_image a {
	display: block;
}

.item_image a img {
	display: block;
	width: 100%;
	height: auto;
}


/*SP対応*/
@media screen and (min-width:0px) and (max-width:450px){
	
	.fullScr {
		min-height: 60vh;
	}
	
	.fullScr h1 {
		letter-spacing: 0;
		font-size: 4rem;
		line-height: 1em;
	}
	
	.bg {
		min-height: auto;
		height: 60vh;
	}
	
	.grandMenu {
		height: 60vh!important;
	}
	
	#scrollBtn {
		display: none;
	}
	
	/*コンテンツ*/
	
	.anchor {
		top: -80px;
	}
	
	.contBlk {
		margin: 0px auto 30%;
		padding: 5vh 3% 30px;
		background-image: none;
		background-color: rgba(15,13,34,0.89);	
	}
	
	.blkHdr h2 {
		font-size: 3rem;
		line-height: 1.1em;
		letter-spacing: normal;
		text-align: center;
	}
	
	.blkHdr h2 span {
		display: block;
	}
	
	.blkHdr.center h2 span,
	.blkHdr.left h2 span {
		display: block;
		margin-left: 0px;
		padding-top: 0em;
	}
	
	/* メインビジュアルブロック */

	#movieWrp .inWrp p {
/*		color: #FFFFFF;*/
		font-size: 1.15em;
		line-height: 1.4em;
		width: 90%;
/*		margin: 0px auto 2em;*/
	}

	/*コンセプト*/
	
	#conceptWrp figure {
		max-width: none;
		float: none;
		margin-bottom: 1em;
		margin-right: 0;
	}
	
	#conceptWrp .txtBlk {
		padding-left: 0;
		float: none;
	}

	/*アクセス*/
	
	#map {
		height: 300px;
		margin: 0px auto 6%;
	}
	
	#address {
		margin-bottom: 6%;
	}
	/*
	#address dl dt,
	#priceWrp dl dt {
		min-width: 25%;
	}
	
	#address dl dd,
	#priceWrp dl dd {
		width: 75%;
	}
    
    #castWrp dl dt,
	#staffWrp dl dt {
        width: 20%;
    }
    
    #castWrp dl dd,
	#staffWrp dl dd {
        width: 80%;
    }*/
	#address dl dt,
	#priceWrp dl dt,
	#castWrp dl dt,
	#staffWrp dl dt {
/*		box-sizing: border-box;
		width: 24%;
		font-size: 1.4rem;
		margin-bottom: 1em;
		border-bottom: 1px dashed #a78c82;
		padding-bottom: 0.5em;
		margin-right: 1%;
		text-align: right;*/
		width: 100%;
		text-align: left;
		padding: 0.5em;
	}

	#address dl dd,
	#priceWrp dl dd,
	#castWrp dl dd,
	#ticketWrp dl dd,
	#staffWrp dl dd {
/*		box-sizing: border-box;
		width: 75%;
		margin-bottom: 1em;
		color: #FFFFFF;
		border-bottom: 1px dashed #8E7066;*/
		width: 100%;
		padding: 0.5em 0.5em 0.5em 1.5em;
	}
	
	/*フッター*/


	#pageFtr {
		padding-top: 0%;
	}
	
	#btt {
		margin-bottom: 10%;
	}
	
	#btt a {
		display: block;
		width: 72px;
		margin: 0px auto;
	}
	#ftrLogo {
		background-size: 150px 150px;
		height: 100px;
		padding-top: 4%;
	}
	
	#ftrLogo a {
		max-width: none;
	}
	
	#copyright {
		font-size: 1rem;
		line-height: 1.5em;
        padding: 1em 0px;
	}
    


    /*プロフィール*/

    .box {
        display: flex;
        justify-content: space-between;
        margin-bottom: 3vh;
        flex-wrap: wrap;
    }
    
    .profbox {
        flex-direction: column-reverse;
    }
    

    .profbox .txtbox {
        width: 100%;
    }

    .profbox .imgbox {
        width: 80%;
        margin: 0px auto 5vh;
    }

    .bookbox .txtbox {
        width: 100%;
    }

    .bookbox .imgbox {
        width: 70%;
        margin: 0px auto 5vh;
    }

/*    .fitimg {
        width: 100%;
        height: auto;
    }
*/	
	
	/*ガイドページ*/
	
	.galleries a {
		width: 33.3%;
	}
	
	#interior {
		margin-bottom: 35px;
	}
	
	.list_secondLV li {
		margin-left: 0em;
	}


	/*プライス*/
	
	.priceTbl th {
		padding: 10px 0px 9px;
		width: 35%;
	}
	
	.priceTbl td {
		padding: 10px 2% 9px;
	}
	
	.priceTbl tr.caution td {
		font-size: 1.2rem;
	}

	.priceTbl tr.caution td img.full_range.sp {
		display: block;
	}

	.priceTbl tr.caution td img.full_range.img_option {
		max-width: 631px;
	}

	.priceTbl tr.caution td img.full_range.pc {
		display: none;
	}
	
	
	.note {
		padding: 0px 0px 20px;
	}
	
	
	/*予約・問い合わせ*/
	
	#google_calendar {
		padding-top: 30px;
	}
	
	#google_calendar iframe  {
		width: 100% !important;
		height: 350px !important;
	}
	
	#toFormLinks li {
		float: none;
		width: 100%;
		margin: 0px auto 10px;
		padding-right: 45px;
		height: 45px;
	}
	
	#toFormLinks li:first-child {
		margin-right: auto;
	}
	
	#toFormLinks li a {
		height: 45px;
		line-height: 45px;
		font-size: 1.8rem;
	}
	
	#toFormLinks li a span {
		width: 45px;
	}
	
	#toFormLinks li a span img {
		width: 40%;
	}
	
	#formChanger {
		margin-bottom: 30px;
	}
	
	#formChanger li {
		float: none;
		width: 100%;
		padding-right: 0px;
		margin-bottom: 10px;
	}
		
	#formChanger li p {
		height: 45px;
		line-height: 45px;
	}
	
	.wide_m {
		width: 75%;
	}
	
	.wide_n {
		width: 60%;
	}
	
	.wide_t {
		width: 35%;
	}
	
	.formBtn {
		height: 45px;
		line-height: 45px;
	}
	
	.formBtn.single {
		width: 100%;
	}
	
	.btnWrp {
		width: 100%;
	}
	
	.formBtn.double {
		width: 45%;
		margin-right: 5%;
	}
	
	.ppWrp {
		height: 120px;
	}
	
	.ppWrp ol > li {
		margin-left: 2%;
		margin-bottom: 1em;
	}
	
	.ppWrp ul li {
		margin-left: 2%;
	}
	

	.clms {
/*		display: flex;
		justify-content: flex-start;*/
		flex-wrap: wrap;
	}

	.item_image {
		width: 100%;
		margin-right: 0px;
		margin-bottom: 15px;;
	}
/*	.item_image a {
		display: block;
	}

	.item_image a img {
		display: block;
		width: 100%;
		height: auto;
	}*/
	
}


/*タブレットサイズ*/
@media screen and (min-width:451px) and (max-width:999px){
	
	
	.blkHdr h2 {
		line-height: 1em;
	}
    
    .contBlk {
        padding-left: 3%;
        padding-right: 3%;
    }

	/*コンセプト*/
	
	#conceptWrp figure {
		display: block;
		width: 45%;
		float: left;
		margin-right: 5%;
		margin-bottom: 20px;
	}
	
	#conceptWrp .txtBlk {
		width: auto;
		float: none;
		max-width: none;
	}
	
	/*ガイドページ*/
	
	.galleries a {
		width: 25%;
	}
	
	
	/*予約・問い合わせ*/
	
	#google_calendar {
		padding-top: 30px;
	}
	
	#google_calendar iframe  {
		width: 100% !important;
		height: 450px !important;
	}
	
	#toFormLinks {
		width: 80%;
	}
	
	#toFormLinks li {
		float: none;
		width: 100%;
		margin: 0px auto 10px;
	}
	
	#toFormLinks li:first-child {
		margin-right: auto;
	}
	
	#toFormLinks li a {
		font-size: 1.8rem;
	}
	
	#toFormLinks li a span {
		width: 70px;
	}
	
	#toFormLinks li a span img {
		width: 40%;
	}/*
	
	#formChanger {
		margin-bottom: 30px;
	}
	
	#formChanger li {
		float: none;
		width: 100%;
		padding-right: 0px;
		margin-bottom: 10px;
	}
		
	#formChanger li p {
		height: 45px;
		line-height: 45px;
	}*/
	
	.wide_m {
		width: 75%;
	}
	
	.wide_n {
		width: 60%;
	}
	
	.wide_t {
		width: 35%;
	}
	
	.formBtn {
		height: 45px;
		line-height: 45px;
	}
	
	.formBtn.single {
		width: 100%;
	}
	
	.btnWrp {
		width: 100%;
	}
	
	.formBtn.double {
		width: 45%;
		margin-right: 5%;
	}
	
	.ppWrp {
		height: 120px;
	}
	
	.ppWrp ol > li {
		margin-left: 2%;
		margin-bottom: 1em;
	}
	
	.ppWrp ul li {
		margin-left: 2%;
	}
	
}


/*メニュー*/
@media screen and (min-width:0px){
	
	#menuOpener.sp {
		display: block;
		position: fixed;
		right: 10px;
		top: 10px;
		width: 40px;
		z-index: 15;
		cursor: pointer;
	}
	
	#menuOpener img {
		display: none;
		width: 100%;
		height: auto;
	}
	#menuOpener img#menu_op,
	#menuOpener.fix img#menu_op2,
	#menuOpener.open img#menu_cl {
		display: block;
	}
	#menuOpener.fix img#menu_op,
	#menuOpener.open img#menu_op,
	#menuOpener.open img#menu_op2 {
		display: none;
	}
	
	#gmLinks {
		text-align: left;
		width: 100%;
		box-sizing: border-box;
		padding: 60px 10% 0px;
		z-index: 1;
	}
	
	#gmLinks.open {
		background-color: rgba(0,0,0,0.80) !important;
		height: 100% !important;
		position: fixed !important;
		top: 0;
		left: 0;
	}
	
	#gmLinks li {
		display: none;
		width: 100%;
		height: 45px;
		margin-bottom: 1px;
	}
	
	#gmLinks.open li {
		display: list-item;
	}
	
	#gmLinks li a {
		display: block;
		height: 45px;
		padding: 0px;
		font-size: 1.8rem;
		line-height: 45px;
		text-align: left;
		color: #FFFFFF;
	}
	
	#gmLinks li.snsMenu a {/*
		width: 20px;*/
	}
	
	#gmLinks li a img {/*
		position: relative;
		top: -2px;*/
	}
	

	/*メニューバー固定*/
	
	#gmLinks.scr {
		position: relative;
		background-color: transparent;
	}
	
	#gmLinks.fix {
		height: 45px;
	}
	
	#gmLinks li#logo_menuBar {
		display: inline;
		width: 45%;
		top: 5px;
	}
	
    #gmLinks li#logo_menuBar a img {
        height: 100%;
        width: auto;
    }

	#gmLinks.open li#logo_menuBar a img.fix {
		display: inline !important;
	}
	#gmLinks.open li#logo_menuBar a img.scr {
		display: none !important;
	}
	
	.snsMenu a img.scr {
		display: none !important;
	}
	.snsMenu a img.fix {
		display: inline !important;
	}
}
@media screen and (min-width:0px) and (max-width:999px){
	
	
	/*ニュース*/
	
	.newsDate,
	.newsTtlBlk h3,
	.ocBtn {
		height: 45px;
	}
	
	.newsDate {
		line-height: 45px;
		float: none;
		width: 100%;
		text-align: left;
		padding-left: 2%;
	}
	
	.newsTtlBlk h3 {
		height: 45px;
		line-height: 1.4em;
		padding: 0.8em 2% 0px;
		margin-left: 0;
	}
	
	.ocBtn {
		width: 45px;
		padding: 10px 0px 0px 15px;
	}
	
	.ocBtn img {
		width: 15px;
	}
	
	.newsBody {
		padding: 2%;
		margin-left: 0;
	}
	
	/*ガイドページ*/
	
	#buildingWrp .contents {
		min-height: inherit;
	}
	
	#buildingWrp .contents figure {
		position: relative;
		right: inherit;
		top: inherit;
	}
	
	#buildingWrp .contents .txt_body {
		width: 96%;
		margin: 0px auto 6%;
	}
	
}
