@charset "UTF-8";
/*------------------top---------------------*/
.shutter{
	width: 100%;
	height: 100%;
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin: auto;
	background-color:#fff;
	z-index:999;
	-webkit-animation: byeShutter 3.0s forwards;
	animation: byeShutter 3.0s forwards;
}
.logo {
	position: absolute;
	width: 220px;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	-webkit-animation: logo 1.4s forwards;
	animation: logo 1.4s forwards;
	animation-delay: 0.2s;
}
@keyframes byeShutter {
70% {
	opacity: 1;
}
100% {
	display: none;
	opacity: 0;
	z-index: -1;
}
}
@keyframes logo {
0% {
	opacity: 1;
}
  
50% {
	transform: rotate(0deg);     
}
100% {
	transform: scale(0.9);
}
}
body {
	background-image: url(/images/bg_top.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	/*background-color: #464646;*/
}
#topWrapper{
	width: 100%;
	/*height: 94.5vh;
	background-image: url(/images/bg_top.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;*/
	padding-top: 106px;
	position: relative;
}

/*#topWrapper{
	width: 100%;
	height: 94.5vh;
	background-image: url(/images/top_img.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	position: relative;
}*/
#topWrapper .topChubu{
	width: 50%;
	color: #fff;
	float: left;
	z-index: 3 !important;
}
#topWrapper .topTokyo{
	width: 50%;
	color: #fff;
	float: right;
	z-index: 3 !important;
}

#topWrapper .topBlock01{
	width: 390px;
	/*margin: 150px auto 0;*/
	margin: 180px auto 0;
}
#topWrapper .topBlock01 h2{
	/*font-family: 'Noto Serif JP', serif;*/
	font-size: 32px;
	font-weight: 400;
	text-align: center;
	letter-spacing: 0.05em;
	position: relative;
	/*margin-bottom: 60px;*/
	margin-bottom: 70px;
}
#topWrapper .topBlock01 h2:before {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -35px;
	display: inline-block;
	width: 60px;
	height: 1px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	border-radius: 0px;
}
#topWrapper .topChubu h2:before {
	background-color: #14dfce;
}
#topWrapper .topTokyo h2:before {
	background-color: #16caf1;
}

#topWrapper .topBlock01 p{
	width: 94%;
	font-size: 15px;
	line-height: 190%;
	margin-left: 3%;
	padding-bottom: 40px;
}
#topWrapper .topBlock01 .topBtn{
	width: 98px;
	font-size: 20px;
	font-weight: 100;
	line-height: 100%;
	text-align: center;
	margin: 0 auto;
	padding: 3px 0 7px;
	border: 1px solid #fff;
	position: relative;
}
#topWrapper .topBlock01 .topBtn a{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3 !important;
}
#topWrapper .topBlock01 .topBtn a:hover{
	background:rgba(255,255,255,0.6);
	transition: 0.45s;
}

#topWrapper .press{
	width: 900px;
	margin-bottom: 60px;
	padding: 25px 10px 20px 60px;
	background-color:rgba(255,255,255,0.8);
	-moz-border-radius:8px!important;
	-webkit-border-radius:8px!important;
	border-radius:8px!important;
	box-sizing: border-box;
	position: absolute;
	/*top: 470px;*/
	top: 560px;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	z-index: 2;
}
#topWrapper .press h3{
	font-family: 'Noto Serif JP', serif;
	font-size: 18px;
	color: #e16513;
	text-align: center;
	/*letter-spacing: 0.05em;*/
	margin-bottom: 25px;
}
#topWrapper .press dl{
	font-size: 14px;
	height: 150px;
	overflow-y: scroll;
	scrollbar-width: thin;
	scrollbar-color: #0079ab #ccc;
}
#topWrapper .press dl::-webkit-scrollbar {
    width: 4px;
}
#topWrapper .press dl::-webkit-scrollbar-track {
    background-color: none;
}
#topWrapper .press dl::-webkit-scrollbar-thumb {
	background-color: #0079ab;
	-moz-border-radius:6px!important;
	-webkit-border-radius:6px!important;
	border-radius:6px!important;
}

#topWrapper .press dt{
	width: 100px;
	color: #0079ab;
	margin-bottom: 15px;
	float: left;
}
#topWrapper .press dd{
	margin-bottom: 15px;
	margin-left: 100px;
}
#topWrapper .press a:link,
#topWrapper .press a:visited{
	color:#1c1c1c;
	text-decoration: none;
}
#topWrapper .press a:hover{
	color:#e16513;
	text-decoration: underline;
}

.topFooter {
	width: 100%;
	color: #fff;
	text-align: center;
	position: fixed;
	left: 0;
	bottom: 3%;
}
.topFooter address{
	font-size: 11px;
}


#topWrapper .topMap{
	width: 508px;
	margin: 70px auto;
	/*padding-top: 170px;*/
	position: absolute;
	top: 106px;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#topWrapper .topMap .inner{
	position: relative;
}
#topWrapper .topMap .pulse01{
	width: 10px;
	height: 10px;
	position: absolute;
	top: 48%;
	right: 43%;
}
#topWrapper .topMap .pulse-btn {
	width: 10px;
	height: 10px;
	background-color: #1da1f2;
	border-radius: 50%;
	box-shadow: 0 0 20px #1da1f2;
	cursor: pointer;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}
/*.pulse-btn img {
	width: 60%;
}*/
#topWrapper .topMap .pulse-btn::before,
#topWrapper .topMap .pulse-btn::after {
	width: 300%;
	height: 300%;
	margin: auto;
	content: "";
	display: block;
	border: 1px solid #1da1f2;
	border-radius: 50%;
	box-sizing: border-box;
	pointer-events: none;
	animation: pulsate 2s linear infinite;
	position: absolute;
	/*top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);*/
	top: -10%;
	bottom: 0;
	left: -100%;
	right: 0;
}
#topWrapper .topMap .pulse-btn::after {
	animation-delay: 1s;
}

@keyframes pulsate {
  0% {
    transform: scale(1);
    opacity: 1;
  }

  100% {
    transform: scale(2);
    opacity: 0;
  }
}


#topWrapper .topMap .pulse02_1,
#topWrapper .topMap .pulse02_2{
	/*width: 10px;
	height: 10px;*/
	/*text-decoration: none;*/
	/*color: #16caf1;
	background: rgba(22,202,241,0);*/
	position: absolute;
	/*top:49.3%;
	right:39.5%;*/
	transform: translate(-50%,-50%);
	padding: 6px 6px;
	font-size: 9px;
	/*font-weight: 550;
	font-family: sans-serif;*/
	/*text-transform: uppercase;*/
	border-radius: 50% !important;
	/*animation: animate2_1 2s linear infinite;*/
}
#topWrapper .topMap .pulse02_1{
	color: #16caf1;
	top:49.3%;
	right:39.5%;
	animation: animate2_1 2s linear infinite;
}
#topWrapper .topMap .pulse02_2{
	color: #14dfce;
	top:52.8%;
	left:43.2%;
	animation: animate2_2 2s linear infinite;
}
@keyframes animate2_1 {
  0%{
    box-shadow:  0 0 0 0 rgba(22,202,241, 0.6), 0 0 0 0 rgba(22,202,241, 0.6);
  }
  30%{
    box-shadow:  0 0 0 50px rgba(22,202,241, 0),0 0 0 0 rgba(22,202,241, 0.6);
  }
  65%{
    box-shadow:  0 0 0 50px rgba(22,202,241, 0),0 0 0 30px rgba(22,202,241, 0);
  }
  100%{
    box-shadow:  0 0 0 0 rgba(22,202,241, 0),0 0 0 30px rgba(22,202,241, 0);
  }
}
@keyframes animate2_2 {
  0%{
    box-shadow:  0 0 0 0 rgba(20,223,206, 0.6), 0 0 0 0 rgba(20,223,206, 0.6);
  }
  30%{
    box-shadow:  0 0 0 50px rgba(20,223,206, 0),0 0 0 0 rgba(20,223,206, 0.6);
  }
  65%{
    box-shadow:  0 0 0 50px rgba(20,223,206, 0),0 0 0 30px rgba(20,223,206, 0);
  }
  100%{
    box-shadow:  0 0 0 0 rgba(20,223,206, 0),0 0 0 30px rgba(20,223,206, 0);
  }
}




/*----------------------------------------------------*/
@media only screen and (max-width: 980px) {

#topWrapper .topBlock01{
	width: 80%;
	margin: 27% auto 0;
}
#topWrapper .topBlock01 h2{
	font-size: 3.1vw;
}
#topWrapper .topBlock01 p{
	width: 90%;
	font-size: 14px;
	margin-left: 5%;
}
#topWrapper .topMap{
	width: 50%;
	margin: 6% auto 0;
}

#topWrapper .press{
	width: 90%;
	margin-bottom: 40px;
}
#topWrapper .press h3{
	font-size: 1.8vw;
}

}




/*----------------------------------------------------*/
@media only screen and (max-width: 768px) {

/*------------------top---------------------*/
.logo {
	width: 200px;
	-webkit-animation: logo 1.0s forwards;
	animation: logo 1.0s forwards;
	animation-delay: 0.1s;
}

body {
	background-image: url(../images/bg_top03sp.png);
	background-repeat: repeat-y;
	background-size: 100% auto;
	padding-bottom: 5%;
	/*background-image: url(/images/bg_top.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;*/
}
#topWrapper{
	/*width: 100%;*/
	padding-top: 54px;
	/*position: relative;*/
}

#topWrapper .topChubu{
	width: 100%;
	/*color: #fff;*/
	background-image: url(../images/bg_top01sp.jpg);
	background-size: cover;
	/*border-bottom: 1px solid #fff;*/
	padding: 20% 0;
	float: none;
	/*z-index: 3 !important;*/
}
#topWrapper .topTokyo{
	width: 100%;
	/*color: #fff;*/
	background-image: url(../images/bg_top02sp.jpg);
	background-size: cover;
	border-bottom: 1px solid #fff;
	padding: 20% 0;
	float: none;
	/*z-index: 3 !important;*/
}

#topWrapper .topBlock01{
	width: 90%;
	margin: 0 auto 0;
}
#topWrapper .topBlock01 h2{
	font-size: 5.8vw;
	font-weight: 400;
	/*text-align: center;
	letter-spacing: 0.05em;
	position: relative;*/
	margin-bottom: 12%;
}
#topWrapper .topBlock01 h2:before {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -20px;
	display: inline-block;
	width: 60px;
	height: 1px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	border-radius: 0px;
}
/*#topWrapper .topChubu h2:before {
	background-color: #14dfce;
}
#topWrapper .topTokyo h2:before {
	background-color: #16caf1;
}*/

#topWrapper .topBlock01 p{
	width: 90%;
	font-size: 3.2vw;
	margin-left: 5%;
	line-height: 175%;
	padding-bottom: 6%;
}
#topWrapper .topBlock01 .topBtn{
	width: 70%;
	font-size: 3.8vw;
	/*font-weight: 100;
	line-height: 100%;
	text-align: center;
	margin: 0 auto;*/
	padding: 2% 0 3%;
	background:rgba(255,255,255,0.3);
	/*border: 1px solid #fff;
	position: relative;*/
}
/*#topWrapper .topBlock01 .topBtn a{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3 !important;
}
#topWrapper .topBlock01 .topBtn a:hover{
	background:rgba(255,255,255,0.6);
	transition: 0.45s;
}*/

#topWrapper .topMap{
	display: none;
	/*width: 80%;
	margin: 0 auto 0;
	position: absolute;
	top: 35%;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;*/
}

#topWrapper .press{
	width: 88%;
	margin: 0 auto 10%;
	padding: 5% 1% 4% 6%;
	background-color:rgba(255,255,255,0.8);
	/*-moz-border-radius:8px!important;
	-webkit-border-radius:8px!important;
	border-radius:8px!important;*/
	position: static;
	/*box-sizing: border-box;
	position: absolute;
	top: 560px;
	left: 50%;*/
    transform: translateX(0%);
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
	/*z-index: 2;*/
}
#topWrapper .press h3{
	/*font-family: 'Noto Serif JP', serif;*/
	font-size: 4.4vw;
	/*color: #e16513;
	text-align: center;*/
	margin-bottom: 7%;
}
#topWrapper .press dl{
	height: 180px;
	font-size: 3.3vw;
	line-height: 150%;
	padding-right: 5%;
}
#topWrapper .press dt{
	width: 7em;
	/*color: #0079ab;*/
	margin-bottom: 4%;
	/*float: left;*/
}
#topWrapper .press dd{
	margin-bottom: 4%;
	margin-left: 7em;
}
/*#topWrapper .press a:link,
#topWrapper .press a:visited{
	color:#1c1c1c;
	text-decoration: none;
}
#topWrapper .press a:hover{
	color:#e16513;
	text-decoration: underline;
}*/

.topFooter {
	/*width: 100%;
	color: #fff;
	text-align: center;
	position: fixed;
	left: 0;
	bottom: 3%;*/
	position: relative;
}
.topFooter address{
	font-size: 11px;
}

}












