@charset "UTF-8";

*{font-family: "游ゴシック", "游ゴシック体", YuGothic, "Yu Gothic Medium", "Yu Gothic", sans-serif; 
	margin:0 0 0 0;
	letter-spacing: 0.02em;
	color: #000;
	font-size: 14px;}

body{position: relative;}

a{transition: 0.5s;
opacity: 1;}

/* text */
b, strong, .bold{
	font-weight: bold;
	}

.tex-navy{
	color: #00276c!important;
	}
/************************************************/
h2{font-size: 2em;
	text-align: center;
	}

h3{width: 80%;
	min-height: 60px;
	display: block;
	margin: 0 auto 30px;
	}

	#conference h3{
		background: url(../img/logo_conference.png);
		background-position: center top;
		background-repeat: no-repeat;
		background-size:contain;
	}
	#fitness h3{
		background: url(../img/logo_fitness.png);
		background-position: center top;
		background-repeat: no-repeat;
		background-size:contain;
	}
	#dining h3{
		background: url(../img/logo_dining.png);
		background-position: center top;
		background-repeat: no-repeat;
		background-size:contain;
	}

h4{font-size: 1em;
	font-weight: bold;
	text-align: center;
	margin: 5px auto 50px;
	}

h5{font-size: 26px;
	line-height: 45px;
	font-weight: bold;
	margin: 0 0 30px 0;
	}

	#conference h5{
		color: #00a6e7;
	}
	#fitness h5{
		color: #ea5015;
	}
	#dining h5{
		color: #6eba44;
	}
h6{font-size: 24px;
	font-weight: bold;
}

p{	font-size: 20px;
	line-height: 35px;
	margin: 0 0 30px 0;
	}

span.kome{
	font-size: 12px;
	line-height: 21px;
	margin: 20px 0 0 0;
	display: block;
}


/* headder & g-navi*/
/************sp_menu.css**********************/
.top-header{
	position: relative;
}
.tit_mainlogo{
	display:block;
	background: url(../img/logo.png)top center no-repeat;
	background-size: contain;
	width:100vw;
	height:40px;
	margin-top: 15px;
	top:0;
	left: 0;
	position: absolute;
}

.header-change{
	display: none;
}

/* section */
article{
	max-width: 778px;
	margin: auto;}

section{
	max-width: 600px;
	margin:-50px auto 0;
	padding:80px 0 60px 0;
}

section.short{
	padding:80px 0 30px 0;
}

#top{
	background: url(../img/top_bg.png) center bottom;
	background-repeat: repeat-x;
	padding: 50px 0 0 0;
	max-width: 100%;
}

#mainvisal{
	background:none;
	margin:0 auto;
	width: 100%;
	max-width: 600px;
	text-align: center;
}

#mainvisal img{
	width: 80%;
	height: auto;
}

.tit_mainlogo2{
	display: block;
	background: url(../img/logo.png)top center no-repeat;
	background-size: contain;
	width:225px;
	height: 93px;
	margin:30px auto 50px;
}


#mainvisal>p{
}

#mainvisal>p.name{
	font-size: 20px;
	line-height: 20px;
	font-weight: bold;
	color: inherit;
	margin:50px 0 30px;
}

#mainvisal>p.main_lead{
	width: 80%;
	margin: 0 auto;
	font-size:1em;
	font-weight: bold;
	font-size: 14px;
	line-height: 30px;
	letter-spacing: 0.06px;
	color: inherit;
}

p.section_lead{
	font-size: 0.8em;
	width: 80%;
	margin: 0 auto;
	text-align: center;
	font-size: 14px;
	line-height: 24px;
}

ul.attention{
	width: 80%;
	margin: 20px auto 0;
	padding: 0 0 0 0;
}

.attention li{
	list-style: none;
	display:block;
	width: 100%;
	text-align: center;
	padding:10px 0;
}


.attention li a{
	font-size: 16px;
}

.attention li a:action,
.attention li a:hover{
	opacity: 0.5;
	transform: 0.5s;
}

/* floor */
div.map{
	display: block;
	width: 80%;
	margin: 0 auto;
}

div.map>p.tit{
	display:block;
	margin: 50px 0 30px 0;
	padding-bottom: 2px;
	font-size:1em;
	line-height: 20px;
}


div.map>p.tit:before{
	content: '';
	display: inline-block;
	padding:10px 2px;
	background:#00276c;
	margin: 0 10px -2px 0;
}

div.map>img{
	clear: both;
	width: 100%;
	height: auto;
}

/*  */
div.sumally{
	width: calc(100% - 60px);
	margin: 80px auto 0;
	clear: both;
	padding-top: 30px;
	}

	#conference div.sumally{
	background: #edfaff;
	}
	#fitness div.sumally{
	background: #ffefe8;
	}
	#dining div.sumally{
	background: #edf8e6;
	}


div.container{
	width: calc(100% - 40px);
	width: -webkit-calc(100% - 40px);
	max-width: 778px;
	margin:-30px auto 0;
	padding-bottom: 30px;
	}

div.sumally div.content-visal{
	margin: -60px auto 0;
	width: 80%;
	max-width: 778px;
	height: auto;
	display: block;
	position: relative;
	}

div.sumally div.content-visal img{
	width: 100%;
	height: auto;
	display: block;
	}

div.sumally div.container div.content-info{
	width:100%;
	margin: 0 auto;
	}
div.sumally div.container p{
	font-size: 16px;
	line-height: 24px;
}

dl.hours{
	font-size: 14px;
	clear: both;
}

dl.hours dt{
	width:20%;
	min-width: 5.5em;
	white-space: nowrap;
	display:inline-table;
	vertical-align: top;
	font-size: inherit;
	margin: 0 0 .5em 0;
}

dl.hours dt:after{
	content:'：';
}

dl.hours dd{
	width:60%;
	display:inline-table;
	font-size: inherit;
	margin: 0 0 .5em 0;
}

ul.concept-icon{
	display: inline-flex;
	margin:30px auto 50px;
	min-width: 260px;
	width: calc(100% - 20px);
	width: -webkit-calc(100% - 20px);
	text-align: center;
	justify-content: center;
	padding: 0 0 0 0;
}

ul.concept-icon li{
	display: inline-block;
	list-style: none;
	width: 65px;
	height: 65px;
	transform: rotate(45deg);
	overflow: hidden;
	position: relative;
	margin: 0 35px 0 0;

}

ul.concept-icon li:last-child{
	margin: 0 0 0 0;

}

	#conference ul.concept-icon li{
		background: #00a6e7;
	}
	#fitness ul.concept-icon li{
		background: #ea5015;
	}
	#dining ul.concept-icon li{
		background: #6eba44;
	}


ul.concept-icon li span{
	display: block;
	color: #fff;
	font-size: 12px;
	line-height: 15px;
	width: 65px;
	height: 65px;
	top:25%;
	left:25%;
	position: absolute;
	background: transparent;
  transform: rotate(-45deg);
  text-align: center;
}

ul.concept-icon li span.ver2{
	top:15%;
	left:15%;
}

.btn_navy{
	background: #00276c;
	display: inline-block;
	text-decoration: none;
	color: #fff;
}

.btn_navy a{
	text-decoration: none!important;
	color: #fff!important;
	font-size: inherit!important;
	font-weight: inherit!important;
}

.btn_navy span{
	color: inherit;
	font-size: 14px;
}

a.btn_navy span:after{
	content: '';
	display: inline-block;
	width: 10px;
	height: 10px;
	border-right:1px solid #fff;
	border-bottom:1px solid #fff;
	margin: 0 0 3px 8px;
	transform: rotate(45deg);
}

a.btn_navy:hover{
	opacity: 0.5;
}

div.sumally a{
	width: 100%;
	font-size: 0.8em;
	line-height: 1.4em;
	padding: 13px 0;
	max-height: -webkit-calc(50px - 21px) ;
    max-height: calc(50px - 21px) ;
	text-align: center;
	margin: 30px 0 0 0;
}

div.sumally a.tel{
	font-size: 1em;
}

div.sumally a.long{
	width: 100%;
}

div.sumally a:first-of-type{
	margin: 20px 20px 0 0;
}

div.sumally a.long:first-of-type{
	margin: 20px 0 0 0;
}

div.column1,
div.column2{
	margin: -120px auto 0;
	padding: 170px 0 0 0;
	width: 100%;
}

div.column2 dl{
	width: calc(100% - 60px);
	width:  -webkit-calc(100% - 60px);
	display: block;
	clear: both;
	margin:0 auto 50px; 
}

div.column2 dl img{
	width: 100%;
	height: auto;
}

div.column2 dl:nth-child(odd){
	margin:0 auto 50px; 
}

div.photo{
}

div.photo dl dt{
	margin:20px 0;
	font-weight: bold;
	font-size: 22px;
}

div.photo dl dt span{
	font-size: 18px;
	margin-right: 15px;
}

div.photo dl dd{
	margin:20px 0;
	font-size: 14px;
	line-height: 24px;
}

div.photo a.link{
	margin:0 0 0 0;
	font-size: 14px;
	text-decoration: none;
}

div.photo a.link:before{
	content: '';
	display: inline-block;
	width: 6px;
	height: 6px;
	transform: rotate(45deg);
	border-right:1px solid #000;
	border-top:1px solid #000;
	margin: 0 5px 2px 0;
}
	#conference div.photo dl dt span,#conference div.photo a.link:hover{
	color: #00a6e7;
	}
	#fitness div.photo dl dt span, #fitness div.photo a.link:hover{
	color: #ea5015;
	}
	#dining div.photo dl dt span,#dining div.photo a.link:hover{
	color: #6eba44;
	}

	#conference div.photo a.link:hover:before{
	margin: 0 5px 2px 2px;
	transition: 0.5s;
	}

	#conference div.photo a.link:hover:before{
	border-right:1px solid #00a6e7;
	border-top:1px solid #00a6e7;
	}
	#fitness div.photo a.link:hover:before{
	border-right:1px solid #ea5015;
	border-top:1px solid #ea5015;
	}
	#dining div.photo a.link:hover:before{
	border-right:1px solid #6eba44;
	border-top:1px solid #6eba44;
	}

div.photo dd.layout span{
	display: block;
	margin-bottom: 5px;
}

div.photo dd.layout .figure_link{
	display:inline-block;
	width:22%;
	margin-right: 1%;
	border: 1px solid #ccc;
	cursor: zoom-in;
}

div.photo dd.layout .figure_link_last{
	margin-right: 0;
}

div.photo dd.layout .figure_link img{
	width: 100%;
	height: auto;
}

div.photo dd.layout .figure_link img:hover{
	opacity: 0.5;
}

div.photo dd.layout figure{
  margin: 0;
  display: none;
}

 div.photo dd.layout figure:target{
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
}

div.photo dd.layout figure:target #overlay{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: rgba(0, 39, 108, 0.5);
  text-decoration: none;
  color: inherit;
}
div.photo dd.layout figure:target img{
  animation: fadein .3s;
  width: 85%;
  height: auto;
}

div.photo dd.layout figcaption{
	color: #fff;
}

@keyframes fadein{
  0%{
    transform: scale(0.2);
    opacity: 0.2;
  }
  100%{
    transform: scale(1);
    opacity: 1;
  }
}

div.flow{
	width: calc(100% - 60px);
}

.flow dl{
	padding: 30px;
	}

	#conference .flow dl{
		background: #edfaff;
		} 
	#fitness .flow dl{
	  	background: #ffefe8;
	  	}
	#dining .flow dl{
	  	background: #edf8e6;
	  	}

.flow dt{
	color: #00a6e7;
	font-weight: bold;
	font-size: 36px;
	margin: 0 0 50px 0;
	text-align: center;
	}
.flow dd{
	text-align: center;
	margin: 0 0 30px;
	font-weight: bold;
}

.flow dt span{
	font-size: 20px;
	margin-right: 10px;
	color: inherit;
	}

.flow dt.flow_lead{
	font-size: 20px;
	line-height: 40px;
	color: inherit;
}

	#conference .flow dt{
		color: #00a6e7;
		font-weight: bold;}

	#fitness .flow dt{
		color: #ea5015;
		font-weight: bold;
		}

	#dining .flow dt{
		color: #6eba44;
		font-weight: bold;
		}

.flow span.tit{
    color: #ea5015;
    font-weight: bold;
	display: block;
	font-size: 20px;
	margin:-40px 0 0 0;
}

.flow-list ol{
  counter-reset: item;
  list-style-type: none;
  padding: 0 0 0 0;
  margin:0 0 0 -23px;
  position: relative;
	}
.flow-list-space{
	display: none;
}

.flow-list li{
	margin-bottom: 30px;
	font-size: 16px;
	width: 90%;
	padding: 0 0 0 38px;
	letter-spacing: 0.03px;
	}

.flow-list li:last-child{
	margin-bottom: 0;
	}

.flow-list li:before {
  counter-increment: item;
  content: counter(item);
  display: inline-table;
  vertical-align: middle;
  text-align: center;
  margin: 0 20px 0 -55px;
  padding: 3px 10px 0px 11px;
  font-size: 18px;
  width: 15px;
  height: 30px;
  font-weight: bold;
  color: #fff;
  border-radius: 50%;}

  @-moz-document url-prefix(){
  	.flow-list li:before {
  	padding: 2px 10px 1px 10px;}
  }
	#conference .flow-list li:before{
		background-image: url(/convinience-facilities/img/list-icon_conference.png);
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		}
	#fitness .flow-list li:before{
		background-image: url(/convinience-facilities/img/list-icon_fitness.png);
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		}
	#dining .flow-list li:before{
		background-image: url(/convinience-facilities/img/list-icon_dining.png);
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		}

.flow .btn{
	font-weight: bold;
	width: 100%;
	height: -webkit-calc(100% - 16px) ;
    height: calc(100% - 16px) ;
	line-height: 20px;
	padding: 8px 0;
	text-align: center;
	margin: 45px auto 0;
}

.flow .btn span{
	font-size: 14px;
	font-weight: normal;
}

.flow a.btn span{
	font-size: inherit;
	padding: 10px 0;
	display: block;
}

.flow .mail,
.flow .mail:hover{
	width: 100%;
	height: -webkit-calc(100% - 16px) ;
    height: calc(100% - 16px) ;
	min-height: 45px;
	content:'';
	background-size:80%;
	background-image: url(../img/mail.png);
	background-position: center;
	background-repeat: no-repeat;
}

.flow .mail img{
	display: block;
	margin: 0 auto;
	width: 80%;
	max-width: 340px;
	height: auto;
}

.price h6{
text-align: center;
padding: 50px 0 0 0;
margin: -50px 0 0 0;
}

.price h6:before{
	content: '';
	background-size: contain;
	width: 260px;
	height: 50px;
	margin:0 auto 10px;
	display: block;
}

	#conference .price h6:before{
		background: url(../img/logo_conference.png);
		background-position:bottom center;
		background-repeat: no-repeat;
		background-size: 100%;
	}
	#fitness .price h6:before{
		background: url(../img/logo_fitness.png);
		background-position:bottom center;
		background-repeat: no-repeat;
		background-size: 100%;
	}
	#dining .price h6:before{
		background: url(../img/logo_dining.png);
		background-position:bottom center;
		background-repeat: no-repeat;
		background-size: 100%;
	}

.price table{
	border: 1px solid #000;
	margin: 0 0 0 0;
	width: 750px;
	border-collapse: collapse;
}

.price table th,
.price table td{
	border: 1px solid #000;
	text-align: center;
	min-width: 200px;
}

.price table th{
	padding: 7px 0;
	max-height: calc(28px - 14px);
	font-size: 16px;
	font-weight: normal;
}
	#conference .price table th{
	background: #c2eeff;
	}
	#fitness .price table th{
	background: #ffc9b4;
	}
	#dining .price table th{
	background: #6eba44;
	}

th span.kome,{
	font-size: 12px;
	margin:0 0 0 1em;
	display: inline-block;
}

td span.kome{
	font-size: 12px;
	margin:0 0 0 0!important;
	display:block;
}

.caution{
	margin: -15px 0 0 0;
	text-align: right;
	padding-bottom: 0;
}

.price table td{
	padding: 14px 0;
	max-height: calc(40px - 28px);
	font-size: 14px;
}

.price table td.room{
	font-size: 14px;
}

.price table td.room span{
	font-size: 14px;
	margin-right: 0.25em;
}

.price table td.plan{
	font-size: 14px;
}

.price table td.plan span.kome{
	font-size: 12px;
	margin:.8em 0 0 0;
}
.fixed01{
  position: sticky;
  left: 0;
  background: #fff;
  min-width:200px;}

 .fixed01:before{
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    min-width:200px;
    height: 100%;
  }

/*行ごとに色変え*/
#conference .table-scroll table tr:nth-child(even) td{
	background: #edfaff;}

#fitness .table-scroll table tr:nth-child(even) td{
	background: #ffefe8;}

#Dining .table-scroll table tr:nth-child(even) td{
	background: #edf8e6;}

td.bg_white{
	background: #fff!important;
}


/* footter */
footer{
	width: 100%;
	padding: 22px;}

.footer{
	padding: 80px 0 20px; }
    .footer-inner {
      width: 100%;}
      .footer-inner-01 {
      	display: block;
        margin: 0 auto 30px;
        width: 80%;

      }
      .footer-inner-03 {
        padding-top: 15px;
        display: block;
        margin: 0 auto;
        width: 60%;
        max-width: 300px;
    }

        .footer-inner-01 img,
        .footer-inner-03 img{
        width: 100%;
        height: auto;}
     
    .footer ul {
      padding:0 0 20px; }
      .footer ul li {
        font-size: 1.2rem;
        line-height: 1;
        display: block;
        text-align: center;
        margin:0 0 0.8em; }

 	.footer_convinience-facilities_logo{
 		display: none;
 	}



      .footer ul li.footer-nav-03 {
        display: block; }

    .footer-copyright {
    	text-align: center;
      font-size:12px;
      position: absolute;
      padding: 0 0 10px 0;
      left: 0;
      bottom: -26px;
      border-top: 1px #ffefe8 solid;
      margin: 0 calc(50% - 50vw);
      width : -webkit-calc(50% - 50vw);
      width: 100vw;
      padding-top: 10px;}

  .pagetop {
    width: 50px;
    height: 50px;
    display: block;
    position: fixed;
    right: 10px;
    bottom: 30px; }
    .pagetop img {
      width: 100%;
      height: auto; }
.footer a{
	text-decoration: none;
	font-size: 14px;
}

.footer a:hover{
	opacity: 0.5;
	transition: 0.5s;
}
/* headder & g-navi*/
.scroll-header,
.scroll-header.fixed,
.header_menu{
	display: none!important;
}

/*============
nav
=============*/
.navArea{
	position: relative;
}

nav {
  position: fixed;
  top: 0;
  right: 105%;
  width: 100%;
  background: rgba(0,39,108,0.9);
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .3s;
  z-index: 3;
}
.open nav {
  top: 0;
 right: 0;
}
nav .inner {
  opacity: 0;
}

.open nav .inner {
  opacity: 1;
}

nav .inner ul {
	list-style: none;
  display: block;
  width: calc(100vw - 20%);
  width: -webkit-calc(100vw - 20%);
  height:0;
	margin: 0 auto 0;
	overflow: auto;
	top: 0;
  padding: 0 0 0 0;
}

.open nav .inner ul {
  top: 0;
  left: 0;
  height: 100vh;
}
nav .inner ul li {
	text-align: center;
	list-style: none;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	border-bottom: 1px #fff solid;
	position: relative;
  width: 0;
}

.open nav .inner ul li {
  width: 100%;
  transition: 0.5s;
}


nav .inner .logo {
  display: block;
  background: rgba(0,39,108,1);
  content: '';
  width: 100%;
  text-align: center;
  height:0;
}


.open nav .inner .logo{
  height:65px;
}

nav .inner .logo img{
	width:auto;
	height:40px;
	margin: 14px auto 0;
}

nav .inner ul li a {
  font-size: 18px;
	max-width: 450px;
  height: 0;
  bottom: 105%;
	padding: 25px 0;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	display: flex;
  justify-content: center;
  align-items: center;
}


.open nav .inner ul li a{
  min-height:20px;
  bottom: 0;
}

.open nav .inner ul li a:hover {
  color: #8093b6;
  transition: 0.5s;}

.open nav .inner ul li a:after{
	content:'';
	display: block;
	width: 10px;
	height: 10px;
	margin: 0 0 0 0;
	right: 0;
	border-right:1px solid #fff;
	border-top:1px solid #fff;
	transform: rotate(45deg);
	margin: 0 5px 0 0;
	position: absolute;
}

.open nav .inner ul li a:hover:after{
	border-right:1px solid #00276c;
	border-top:1px solid #00276c;
	transition: 0.5s;
}

.open nav .inner ul a.link_no-down:after,
.open nav .inner ul a.link_no-down:hover:after{
	display: none;
}

.open nav .inner ul li.conference a{
	background: url(../img/logo_conference_white.png) center no-repeat;
}
.open nav .inner ul li.fitness a{
	background: url(../img/logo_fitness_white.png) center no-repeat;
}
.open nav .inner ul li.dining a{
	background: url(../img/logo_dining_white.png) center no-repeat;
}

.open nav .inner ul li a,
.open nav .inner ul li.hedder-link_btn a{
	margin: 0 auto;
	background-size: 50%;
}

.open nav .inner ul li.hedder-link_btn a:hover{
	opacity: 0.5;}


/*============
.toggle_btn
=============*/
.toggle_btn {
  display: block;
  position: fixed;
  top: 20px;
  right: 20px;
  width: 30px;
  height: 30px;
  transition: all .5s;
  cursor: pointer;
  z-index: 3;
}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 20px;
  height: 2px;
  background-color: #333;
  border-radius: 3px;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  top: 4px;
}
.toggle_btn span:nth-child(2) {
  top: 14px;
}
.toggle_btn span:nth-child(3) {
  bottom: 4px;
}
.open .toggle_btn span {
  background-color: #fff;
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(10px) rotate(-315deg);
  transform: translateY(10px) rotate(-315deg);
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translateY(-10px) rotate(315deg);
  transform: translateY(-10px) rotate(315deg);
}


.table-scroll{
  overflow: auto;
  white-space: nowrap; 
  width: calc(100% - 30px);
  position: relative;
  margin: 50px 0 0 30px;
}

/* 以下、スクロールバーを追加 */
.table-scroll::-webkit-scrollbar{　　
 height: 5px;
}
.table-scroll::-webkit-scrollbar-track{
 background: #333;
}
.table-scroll::-webkit-scrollbar-thumb {
 background: #999;
}

/* 以下、tableの指定 */

/* tittle images */
.tit_img{
	display: none;
}

.pc_br{display: none;}


.txt_light,
nav .inner ul li.txt_light a {
	font-weight: normal!important;
}
}
