@charset "UTF-8";
.con_intro .floor_map { max-width: 1200px; margin: auto; }
@media only screen and (max-width: 1199px) { .con_intro .floor_map { width: 91.66667%; } }

.con_common:after { content: ""; display: table; clear: both; }

@media only screen and (min-width: 768px) { html.lower #contents .page_title { background: url(../../../facilities/images/img_main.jpg) no-repeat center/cover; } }
@media print { html.lower #contents .page_title { background: url(../../../facilities/images/img_main.jpg) no-repeat center/cover; } }
.ie8 html.lower #contents .page_title { background: url(../../../facilities/images/img_main.jpg) no-repeat center/cover; }
@media only screen and (max-width: 767px) { html.lower #contents .page_title { background: url(../../../facilities/images/img_main-sp.jpg) no-repeat center/cover; } }

#layout_gnav { position: fixed; right: 0; top: 45%; z-index: 999; display: none; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); background: rgba(255, 255, 255, 0.8); padding: 2em; -moz-border-radius: 0.8em; -webkit-border-radius: 0.8em; border-radius: 0.8em; }
@media only screen and (min-width: 1025px) and (max-width: 1799px) { #layout_gnav { top: 30%; } }
@media print { #layout_gnav { top: 30%; } }
.ie8 #layout_gnav { top: 30%; }
@media only screen and (min-width: 1300px) and (max-width: 1350px) { #layout_gnav { right: 6em; } }
@media print { #layout_gnav { right: 6em; } }
.ie8 #layout_gnav { right: 6em; }
#layout_gnav h3 { font-family: "Gilda Display", serif; font-size: 72%; letter-spacing: 10px; }
#layout_gnav ul li { margin-top: 15px; }
@media only screen and (min-width: 1025px) and (max-width: 1799px) { #layout_gnav ul li { margin-top: 10px; } }
@media print { #layout_gnav ul li { margin-top: 10px; } }
.ie8 #layout_gnav ul li { margin-top: 10px; }
#layout_gnav ul li a { text-decoration: none; display: block; position: relative; letter-spacing: 2px; font-weight: bold; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; }
#layout_gnav ul li a:before { content: ''; width: 10px; height: 1px; top: 8px; left: -15px; opacity: 0; position: absolute; background: #c65b13; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; }
#layout_gnav ul li a:hover { -moz-transform: translateX(15px); -ms-transform: translateX(15px); -webkit-transform: translateX(15px); transform: translateX(15px); }
#layout_gnav ul li a:hover:before { opacity: 1; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; }
#layout_gnav ul li.active a { -moz-transform: translateX(15px); -ms-transform: translateX(15px); -webkit-transform: translateX(15px); transform: translateX(15px); }
#layout_gnav ul li.active a:before { opacity: 1; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; }

.con_intro { 	/*.floor_map {
		@extend %bw;
		position: relative;
		.box_floor_map {
			@include cV(margin-bottom, 80px, 3em);
			@include mq(pc_tab) {
				@include display-flex();
				@include justify-content(center);
				@include align-items(center);
			}
			.img {
				max-width: 500px;
				margin-right: wCon(70,1200);
				@include mq(tab) {
					margin-right: 4%;
				}
				@include mq(sp) {
					width: 100%;
					margin-bottom: 1.8em;
				}
			}
			.btn {
				max-width: 250px;
				width: 35.5%;
				@include mq(sp) {
					width: 100%;
					margin: 0 auto;

				}
			}
		}
	}*/ }
.con_intro .floor_map { margin-bottom: 3.33333%; }
@media only screen and (max-width: 767px) { .con_intro .floor_map { margin-bottom: 1rem; } }
@media only screen and (min-width: 1200px) { .con_intro .floor_map { width: 51.99629%; } }
@media print { .con_intro .floor_map { width: 51.99629%; } }
.ie8 .con_intro .floor_map { width: 51.99629%; }
@media only screen and (min-width: 768px) and (max-width: 1199px) { .con_intro .floor_map { width: 80%; } }
@media only screen and (max-width: 767px) { .con_intro .floor_map { width: 95%; } }
.con_intro .con_lnk { max-width: 1100px; }
@media only screen and (min-width: 768px) and (max-width: 1199px) { .con_intro .con_lnk { padding: 0; } }
.con_intro .con_lnk ul { -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; }
.con_intro .con_lnk ul li { padding: 5px; }
@media only screen and (min-width: 768px) { .con_intro .con_lnk ul li { width: 32%; margin: 0; } }
@media print { .con_intro .con_lnk ul li { width: 32%; margin: 0; } }
.ie8 .con_intro .con_lnk ul li { width: 32%; margin: 0; }

.con_common { padding: 50px 0 30px; border-bottom: 1px solid #ebebeb; }
@media only screen and (max-width: 767px) { .con_common { padding: 1.5em 0 1em; } }
@media only screen and (min-width: 1200px) { .con_common .container { max-width: 90%; } }
@media print { .con_common .container { max-width: 90%; } }
.ie8 .con_common .container { max-width: 90%; }
.con_common .container h3 span.en { font-size: 72%; }
.con_common .container h3 span.jp { font-size: 115%; }
.con_common .container .img span { display: block; position: relative; overflow: hidden; }
@media only screen and (min-width: 768px) { .con_common .container .img span { height: 0; padding-bottom: 32.31293%; }
  .con_common .container .img span img { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 100%; } }
@media print { .con_common .container .img span { height: 0; padding-bottom: 32.31293%; }
  .con_common .container .img span img { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 100%; } }
.ie8 .con_common .container .img span { height: 0; padding-bottom: 32.31293%; }
.ie8 .con_common .container .img span img { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 100%; }
@media only screen and (max-width: 767px) { .con_common .container .img span { overflow: hidden; }
  .con_common .container .img span img { position: relative; width: 150%; max-width: none; margin-left: -25%; } }
.con_common .container [class^="slide_common"] { margin-bottom: 0 !important; }
.con_common .container [class^="slide_common"] span { display: block; position: relative; overflow: hidden; }
@media only screen and (min-width: 768px) { .con_common .container [class^="slide_common"] span { height: 0; padding-bottom: 32.31293%; }
  .con_common .container [class^="slide_common"] span img { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 100%; } }
@media print { .con_common .container [class^="slide_common"] span { height: 0; padding-bottom: 32.31293%; }
  .con_common .container [class^="slide_common"] span img { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 100%; } }
.ie8 .con_common .container [class^="slide_common"] span { height: 0; padding-bottom: 32.31293%; }
.ie8 .con_common .container [class^="slide_common"] span img { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 100%; }
@media only screen and (max-width: 767px) { .con_common .container [class^="slide_common"] span { overflow: hidden; }
  .con_common .container [class^="slide_common"] span img { position: relative; width: 150%; max-width: none; margin-left: -25%; } }
.con_common .container [class^="js-dots"] { display: flex; align-items: center; justify-content: center; margin-top: 15px; }
@media only screen and (max-width: 767px) { .con_common .container [class^="js-dots"] { margin-top: 1em; } }
.con_common .container [class^="js-dots"] .prev, .con_common .container [class^="js-dots"] .next { text-align: center; cursor: pointer; }
@media only screen and (max-width: 767px) { .con_common .container [class^="js-dots"] .prev, .con_common .container [class^="js-dots"] .next { margin-top: .2em; } }
.con_common .container [class^="js-dots"] .prev:before, .con_common .container [class^="js-dots"] .next:before { margin: 0 !important; color: #403c38; font-size: 122%; }
@media only screen and (min-width: 768px) and (max-width: 1199px) { .con_common .container [class^="js-dots"] .prev:before, .con_common .container [class^="js-dots"] .next:before { font-size: 115%; } }
@media only screen and (max-width: 767px) { .con_common .container [class^="js-dots"] .prev:before, .con_common .container [class^="js-dots"] .next:before { font-size: 108%; } }
.con_common .container [class^="js-dots"] .prev { order: 0; margin-right: 2.5em; }
.con_common .container [class^="js-dots"] .prev:before, .con_common .container [class^="js-dots"] .prev:after { font-family: FontAwesome; }
.con_common .container [class^="js-dots"] .prev > * { vertical-align: middle; }
.con_common .container [class^="js-dots"] .prev:before { content: ""; margin-right: .5em; }
.con_common .container [class^="js-dots"] .next { order: 2; margin-left: 2.5em; }
.con_common .container [class^="js-dots"] .next:before, .con_common .container [class^="js-dots"] .next:after { font-family: FontAwesome; }
.con_common .container [class^="js-dots"] .next > * { vertical-align: middle; }
.con_common .container [class^="js-dots"] .next:before { content: ""; margin-right: .5em; }
.con_common .container [class^="js-dots"] .slick-dots { text-align: right; bottom: -2.5em; z-index: 1; width: auto; position: absolute; left: 50%; -moz-transform: translate(-50%, 0); -ms-transform: translate(-50%, 0); -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); position: static; transform: translate(0); width: auto !important; }
@media only screen and (max-width: 767px) { .con_common .container [class^="js-dots"] .slick-dots { bottom: .5em; width: 100%; text-align: center; } }
.con_common .container [class^="js-dots"] .slick-dots li { position: relative; width: 4px; height: 0; padding-top: 4px; margin: 0; display: inline-block; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; overflow: hidden; -moz-transition: background 300ms; -o-transition: background 300ms; -webkit-transition: background 300ms; transition: background 300ms; background: #cbcbcb; }
.con_common .container [class^="js-dots"] .slick-dots li:not(.slick-active) button { cursor: pointer; }
.mouse .con_common .container [class^="js-dots"] .slick-dots li:not(.slick-active):hover, .touch .con_common .container [class^="js-dots"] .slick-dots li:not(.slick-active).touchstart { background: #868482; }
.touch .con_common .container [class^="js-dots"] .slick-dots li:not(.slick-active) { -webkit-tap-highlight-color: transparent; }
.touch .con_common .container [class^="js-dots"] .slick-dots li:not(.slick-active).touchend { -moz-transition-delay: 200ms; -o-transition-delay: 200ms; -webkit-transition-delay: 200ms; transition-delay: 200ms; }
.con_common .container [class^="js-dots"] .slick-dots li:not(:first-child) { margin-left: 1.5em; }
@media only screen and (max-width: 767px) { .con_common .container [class^="js-dots"] .slick-dots li:not(:first-child) { margin-left: 1em; } }
.con_common .container [class^="js-dots"] .slick-dots li.slick-active { background-color: #403c38; }
@media only screen and (max-width: 767px) { .con_common .container [class^="js-dots"] .slick-dots li { width: 1em; padding-top: 1em; } }
.con_common .container [class^="js-dots"] .slick-dots li button { position: absolute; left: 0; top: 0; width: 100%; height: 100%; opacity: 0; margin: 0; padding: 0; }
.con_common .container [class^="js-dots"] .slick-dots li { vertical-align: middle; }
.con_common .container [class^="js-dots"] .slick-dots li.slick-active { width: 10px; padding-top: 10px; }
@media only screen and (max-width: 767px) { .con_common .container [class^="js-dots"] .slick-dots li { width: .5em; padding-top: .5em; }
  .con_common .container [class^="js-dots"] .slick-dots li.slick-active { width: 1em; padding-top: 1em; } }
.con_common .container .box_common { padding-top: 50px; }
@media only screen and (max-width: 767px) { .con_common .container .box_common { padding-top: 2em; } }
.con_common .container .box_common .txt { max-width: 550px; margin: 15px auto; letter-spacing: .2em; }
.con_common .container .box_common .box_btn { text-align: center; }
.con_common .container .box_common .box_btn .btn { display: inline-block; width: 30em; }
@media only screen and (max-width: 767px) { .con_common .container .box_common .box_btn .btn { width: 95%; } }
