@charset "utf-8";

@import url("./facility_common.css");

/*==================================================
page setting
================================================== */

#suntory_contents #container_facility_map #insidenav li.nv_map a {
	background-color: #fff4d0;
	pointer-events: none;
}
#suntory_contents #container_facility_map #mainsection .left li a:hover {
	color: #fff;
	background:#881133;
	opacity: 1;
}
#suntory_contents #container_facility_map #mainsection .left li a:hover::before {
	background:#aa1144;
}

/*==================================================
sp
================================================== */
@media screen and (max-width:767px){

	#suntory_contents #container_facility_map #contents {
		padding-bottom: 0;
	}
/*==================================================
mainsection [sp]
================================================== */
#suntory_contents #container_facility_map #mainsection .inner {
	display:flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	align-items: flex-start;
}

#suntory_contents #container_facility_map #mainsection .right {
	margin-top: 8vw;
}
#suntory_contents #container_facility_map #mainsection .left {
	margin-top: 0;
}
#suntory_contents #container_facility_map #mainsection .left li {
	margin-bottom: 1.33333333vw;
}
#suntory_contents #container_facility_map #mainsection .left li a {
	display: block;
	width: 100%;
	height: 13.33333333vw;
	padding-left: 6.66666667vw;
	color: #222;
	font-size: 4.26666667vw;
	font-weight: bold;
	line-height: 13.33333333vw;
	text-decoration: none;
	background: #F2F2F2;
	position: relative;
}
#suntory_contents #container_facility_map #mainsection .left li a::before {
	content: "";
	vertical-align: middle;
	position: absolute;
	width: 9.33333333vw;
	height: 6.66666667vw;
	top: 3.33333333vw;
	right: 5.33333333vw;
	background:#881133;
}
#suntory_contents #container_facility_map #mainsection .left li a::after {
	content: "";
	vertical-align: middle;
	position: absolute;
	top: calc(50% - 1.6vw);
	right: 9vw;
	width: 2vw;
	height: 2vw;
	margin: auto;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}


/*==================================================
container_facility_map common [sp]
================================================== */
#suntory_contents #container_facility_map .left p {
	font-size: 3.73333333vw;
	line-height: 1.7;
}
#suntory_contents #container_facility_map .box {
	width: 100%;
	margin-top: 4vw;
	background: #FFF;
	box-shadow: 0 0 1.33333333vw 0 rgba(204,170,102,.6);
}
#suntory_contents #container_facility_map .box.wide {
	width: 100%;
}
#suntory_contents #container_facility_map .box h4 {
	width: 100%;
	height: 12vw;
	padding: 0 0 0 4vw;
	font-size: 4vw;
	font-weight: bold;
	line-height: 12vw;
	background: #f5eee0;
}
#suntory_contents #container_facility_map .box .grid {
	padding: 4vw;
	display:flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
}
#suntory_contents #container_facility_map .box .grid figure {
	width: 100%;
	order:1;
}
#suntory_contents #container_facility_map .box .grid .txt {
	width: 100%;
	margin-top: 4vw;
	order:2;
}
#suntory_contents #container_facility_map .box .grid .txt p {
	font-size: 3.73333333vw;
    line-height: 1.7;
}
#suntory_contents #container_facility_map .box .grid .txt p sup{
	margin: 0 0.53333333vw;
}
#suntory_contents #container_facility_map .box .grid .txt p.notes {
	margin-top: 2.66666667vw;
	font-size: 2.93333333vw;
}
#suntory_contents #container_facility_map .box .grid .txt p .external {
	margin: 0 0.4vw;
}
#suntory_contents #container_facility_map .lowerbox {
	width: 100%;
	padding: 4vw 0 0;
	margin-top: 4vw;
	background: #FFF;
	box-shadow: 0 0 1.33333333vw 0 rgba(204,170,102,.6);
}
#suntory_contents #container_facility_map .lowerbox.wide {
	width: 100%;
}
#suntory_contents #container_facility_map .lowerbox h5 {
	width: 100%;
	height: 6.66666667vw;
	padding: 0 0 0 4vw;
	font-size: 4vw;
	font-weight: bold;
	line-height: 6.66666667vw;
	position: relative;
}
#suntory_contents #container_facility_map .lowerbox h5::before {
	content: " ";
	background: #e5d4b2;
	width: 1.33333333vw;
	height: 6.66666667vw;
	border-radius: 0.26666667vw;
	position: absolute;
	left: 0;
	top: 0;
}
#suntory_contents #container_facility_map .lowerbox .grid {
	padding: 4vw;
	display:flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: flex-start;
}
#suntory_contents #container_facility_map .lowerbox .grid figure {
	width: 32vw;
}
#suntory_contents #container_facility_map .lowerbox .grid .txt {
	width: calc(100% - 36vw);
}
#suntory_contents #container_facility_map .lowerbox .grid p {
	font-size: 3.2vw;
    line-height: 1.7;
}

/*==================================================
foyer [sp]
================================================== */
#suntory_contents #container_facility_map #foyer {
	margin-top: 4vw;
}
#suntory_contents #container_facility_map #foyer .inner {
	padding: 4vw 4vw 8vw;
	background: #faf6ef;
	display:flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
}
#suntory_contents #container_facility_map #foyer .left {
	width: 100%;
}
#suntory_contents #container_facility_map #foyer .right {
	width: 100%;
	margin-top: 5.33333333vw;
}
#suntory_contents #container_facility_map #foyer .right figure {
	width: 100%;
}
#suntory_contents #container_facility_map #foyer .box .bt_relation {
	width: 76vw;
	height: 12vw;
	margin-top: 4vw;
	margin-bottom: 1.33333333vw;
}
#suntory_contents #container_facility_map #foyer .box .bt_relation a {
	font-size: 4vw;
	line-height: 12vw;
}
#suntory_contents #container_facility_map #foyer .box .bt_relation a::before {
	width: 6.66666667vw;
	height: 6.66666667vw;
	top:2.66666667vw;
	right:3.33333333vw;
}
#suntory_contents #container_facility_map #foyer .box .bt_relation a::after {
	top: calc(50% - 1.2vw);
	right: 6vw;
}
#suntory_contents #container_facility_map #foyer .box.noshade {
	box-shadow: none;
}
#suntory_contents #container_facility_map #foyer .lowerbox .bt_relation {
	width: 76vw;
	height: 12vw;
	margin: 4vw 0 1.33333333vw 4vw;
}
#suntory_contents #container_facility_map #foyer .lowerbox .bt_relation a {
	text-align: center;
	line-height: 12vw;
	font-size: 4vw;
}
#suntory_contents #container_facility_map #foyer .lowerbox .bt_relation a::before {
	width: 6.66666667vw;
	height: 6.66666667vw;
	top:2.66666667vw;
	right:3.33333333vw;
}
#suntory_contents #container_facility_map #foyer .lowerbox .bt_relation a::after {
	top: calc(50% - 1.2vw);
	right: 6vw;
}
#suntory_contents #container_facility_map #foyer .lowerbox p.signature {
	text-align: right;
}
#suntory_contents #container_facility_map #foyer .lowerbox#medal .grid {
	display:flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	align-items: flex-start;
}
#suntory_contents #container_facility_map #foyer .lowerbox#medal .grid figure {
	width: 100%;
	order:1;
}
#suntory_contents #container_facility_map #foyer .lowerbox#medal .grid .txt {
	width: 100%;
	margin-top: 4vw;
	order:2;
}

/*==================================================
entrance [sp]
================================================== */
#suntory_contents #container_facility_map #entrance {
	/*	margin-top: 4vw;*/
}
#suntory_contents #container_facility_map #entrance .inner {
	padding: 4vw 4vw 8vw;
	background: #faf6ef;
	display:flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
}
#suntory_contents #container_facility_map #entrance .left {
	width: 100%;
}
#suntory_contents #container_facility_map #entrance .right {
	width: 100%;
	margin-top: 4vw;
}
#suntory_contents #container_facility_map #entrance .left figure {
	width: 100%;
	margin-top: 4vw;
}
#suntory_contents #container_facility_map #entrance .right figure {
	width: 100%;
}

/*==================================================
karajan [sp]
================================================== */
#suntory_contents #container_facility_map #karajan .inner {
	padding: 4vw 4vw 8vw;
	background: #faf6ef;
	display:flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
}
#suntory_contents #container_facility_map #karajan .right {
	width: 100%;
	margin-top: 4vw;
}
#suntory_contents #container_facility_map #karajan .right figure {
	width: 100%;
}
#suntory_contents #container_facility_map #karajan .left {
	width: 100%;
}
#suntory_contents #container_facility_map #karajan .left .nest {
	width: 100%;
	margin-top: 4vw;
}
#suntory_contents #container_facility_map #karajan .left .nest figure.i01 {
	width: 100%;
	margin: 4vw 0;
}
#suntory_contents #container_facility_map #karajan .left .nest figure.i02 {
	width: 100%;
	margin: 4vw 0;
	display:flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items:center;
}
#suntory_contents #container_facility_map #karajan .left .nest figure.i02 img{
	width: 41.33333333vw;
}
#suntory_contents #container_facility_map #karajan .left .nest figure.i02 figcaption {
	width: 40vw;
	margin-left: 4vw;
	font-size: 3.2vw;
	line-height: 1.6;
}

/*==================================================
backstage [sp]
================================================== */
#suntory_contents #container_facility_map #backstage .inner {
	padding: 4vw 4vw 8vw;
	background: #faf6ef;
	display:flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
}
#suntory_contents #container_facility_map #backstage .right {
	width: 100%;
	margin-top: 4vw;
}
#suntory_contents #container_facility_map #backstage .right figure {
	width: 100%;
}
#suntory_contents #container_facility_map #backstage .left {
	width: 100%;
}
#suntory_contents #container_facility_map #backstage .left .nest {
	width: 100%;
	margin-top: 4vw;
	display:flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-content: flex-start;
}
#suntory_contents #container_facility_map #backstage .left .nest figure {
	width: 44vw;
}
#suntory_contents #container_facility_map #backstage .box .boxright {
	width: 100%;
	display:flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-content: flex-start;
}
#suntory_contents #container_facility_map #backstage .box .boxright figure {
	width: 40vw;
}

#suntory_contents #tour {
    margin-right: 4vw;
    margin-left: 4vw;
    margin-bottom: 12vw;
}

}
/*==================================================
pc
================================================== */
@media print, screen and (min-width:768px){

/*==================================================
mainsection [pc]
================================================== */
#suntory_contents #container_facility_map #mainsection .inner {
	padding-left: 2.77777777%;
}
#suntory_contents #container_facility_map #mainsection .left li {
	margin-bottom: 10px;
}
#suntory_contents #container_facility_map #mainsection .left li a {
	display: block;
	width: 100%;
	height: 50px;
	padding-left: 30px;
	color: #222;
	font-size: 15px;
	font-weight: bold;
	line-height: 50px;
	text-decoration: none;
	background: #F2F2F2;
	position: relative;
}
#suntory_contents #container_facility_map #mainsection .left li a::before {
	content: "";
	vertical-align: middle;
	position: absolute;
	width: 36px;
	height: 24px;
	top:13px;
	right: 30px;
	background:#881133;
}
#suntory_contents #container_facility_map #mainsection .left li a::after {
	content: "";
	vertical-align: middle;
	position: absolute;
	top: calc(50% - 6px);
	right: 43px;
	width: 8px;
	height: 8px;
	margin: auto;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}


/*==================================================
container_facility_map common [pc]
================================================== */
#suntory_contents #container_facility_map .left p {
	font-size: 15px;
	line-height: 1.7;
}
#suntory_contents #container_facility_map .box {
	width: 48.52941176%;
	margin-top: 30px;
}
#suntory_contents #container_facility_map .box h4 {
	width: 100%;
	height: 50px;
	padding: 0 0 0 20px;
	font-size: 16px;
	font-weight: bold;
	line-height: 50px;
	background: #F0E5D1;
}
#suntory_contents #container_facility_map .box .grid {
	padding: 20px 20px 0;
	display:flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: flex-start;
}
#suntory_contents #container_facility_map .box .grid figure {
	width: 43.95604395%;
}
#suntory_contents #container_facility_map .box .grid .txt {
	width: 51.64835164%;
}
#suntory_contents #container_facility_map .box .grid .txt p {
	font-size: 14px;
    line-height: 1.7;
}
#suntory_contents #container_facility_map .box .grid .txt p sup{
	margin: 0 2px;
}
#suntory_contents #container_facility_map .box .grid .txt p.notes {
	font-size: 12px;
}
#suntory_contents #container_facility_map .box .grid .txt p .external {
	margin: 0 3px;
}
#suntory_contents #container_facility_map .lowerbox {
	width: 48.52941176%;
	padding: 20px;
	margin-top: 30px;
	background: #FFF;
}
#suntory_contents #container_facility_map .lowerbox.wide {
	width: 100%;
}
#suntory_contents #container_facility_map .lowerbox h5 {
	width: 100%;
	height: 30px;
	padding: 0 0 0 25px;
	font-size: 16px;
	font-weight: bold;
	line-height: 30px;
	position: relative;
}
#suntory_contents #container_facility_map .lowerbox h5::before {
	content: " ";
	background: #e5d4b2;
	width: 10px;
	height: 30px;
	border-radius: 2px;
	position: absolute;
	left: 0;
	top: 0;
}
#suntory_contents #container_facility_map .lowerbox .grid {
	padding: 20px 0 0;
	display:flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: flex-start;
}
#suntory_contents #container_facility_map .lowerbox .grid figure {
	width: 120px;
}
#suntory_contents #container_facility_map .lowerbox .grid .txt {
	width: calc(100% - 140px);
}
#suntory_contents #container_facility_map .lowerbox .grid .txt p {
	font-size: 14px;
    line-height: 1.7;
}

/*==================================================
foyer [pc]
================================================== */
#suntory_contents #container_facility_map #foyer .inner {
	padding: 30px;
	background: #faf6ef;
}
#suntory_contents #container_facility_map #foyer .left,
#suntory_contents #container_facility_map #foyer .right {
	width: 48.52941176%;
}
#suntory_contents #container_facility_map #foyer .right figure {
	width: 100%;
}
#suntory_contents #container_facility_map #foyer .box .bt_relation,
#suntory_contents #container_facility_map #foyer .lowerbox .bt_relation {
	width: 220px;
	height: 40px;
	margin: 20px 0 0;
}
#suntory_contents #container_facility_map #foyer .box .bt_relation a,
#suntory_contents #container_facility_map #foyer .lowerbox .bt_relation a {
	font-size: 14px;
	line-height: 40px;
	text-align: center;
}
#suntory_contents #container_facility_map #foyer .box .bt_relation a::before,
#suntory_contents #container_facility_map #foyer .lowerbox .bt_relation a::before {
	width: 19px;
	height: 22px;
	top:9px;
	right:10px;
}
#suntory_contents #container_facility_map #foyer .box .bt_relation a::after,
#suntory_contents #container_facility_map #foyer .lowerbox .bt_relation a::after {
	top: calc(50% - 4px);
	right: 17px;
	width: 6px;
	height: 6px;
}
#suntory_contents #container_facility_map .box.wide {
	width: 100%;
}
#suntory_contents #container_facility_map .box.wide .grid > figure{
	width: 200px;
}
#suntory_contents #container_facility_map .box.wide .grid >.txt{
	width: calc(100% - 220px);
}
#suntory_contents #container_facility_map #foyer .lowerbox .txt p.signature {
	text-align: right;
}
#suntory_contents #container_facility_map #foyer .lowerbox.wide figure {
	width: 250px;
}
#suntory_contents #container_facility_map #foyer .lowerbox.wide .txt {
	width: calc(100% - 270px);
}


/*==================================================
entrance [pc]
================================================== */
#suntory_contents #container_facility_map #entrance .inner {
	padding: 30px;
	background: #faf6ef;
}
#suntory_contents #container_facility_map #entrance .left,
#suntory_contents #container_facility_map #entrance .right {
	width: 48.52941176%;
}
#suntory_contents #container_facility_map #entrance .left figure {
	margin-top: 20px;
}


/*==================================================
karajan [pc]
================================================== */
#suntory_contents #container_facility_map #karajan .inner {
	padding: 30px;
	background: #faf6ef;
}
#suntory_contents #container_facility_map #karajan .right {
	width: 320px;
}
#suntory_contents #container_facility_map #karajan .left {
	width: calc(100% - 350px);
}
#suntory_contents #container_facility_map #karajan .left .nest {
	width: 100%;
	margin-top: 30px;
	height: 196px;
	display:flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-content: flex-start;
}
#suntory_contents #container_facility_map #karajan .left .nest figure.i01 {
	width:44.77611940%;
	margin-right: 30px;
}
#suntory_contents #container_facility_map #karajan .left .nest figure.i02 {
	width: 50.74626865%;
}
#suntory_contents #container_facility_map #karajan .left .nest figure.i02 img {
	width: 170px;
}
#suntory_contents #container_facility_map #karajan .left .nest figure.i02 figcaption {
	margin-top: 30px;
	font-size: 14px;
	line-height: 1.4;
}

/*==================================================
backstage [pc]
================================================== */
#suntory_contents #container_facility_map #backstage .inner {
	padding: 30px;
	background: #faf6ef;
}
#suntory_contents #container_facility_map #backstage .right {
	width: 320px;
}
#suntory_contents #container_facility_map #backstage .left {
	width: calc(100% - 350px);
}
#suntory_contents #container_facility_map #backstage .left .nest {
	width: 100%;
	margin-top: 30px;
	display:flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-content: flex-start;
}
#suntory_contents #container_facility_map #backstage .left .nest figure {
	width: 34.32835820%;
	margin-right: 30px;
}
#suntory_contents #container_facility_map #backstage .box .boxright {
	width: 43.95604395%;
}
#suntory_contents #container_facility_map #backstage .box .boxright figure{
	width: 100%;
}
#suntory_contents #container_facility_map #backstage .box .boxright figure + figure {
	margin-top: 10px;
}

}
@media print, screen and (min-width:768px) and (max-width:1080px){
	#suntory_contents #container_facility_map #foyer .inner,
	#suntory_contents #container_facility_map #entrance .inner,
	#suntory_contents #container_facility_map #karajan .inner,
	#suntory_contents #container_facility_map #backstage .inner {
		padding: 30px 10px;
	}
	#suntory_contents #container_facility_map .box .grid {
		padding: 20px 5px 0;
	}

}