:lang(ja) {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}

body:lang(ja) {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}
body {
	font-family:'Open Sans', sans-serif;
}

h1, h2, h3, h4, h5 {
	font-family: 'Comfortaa', cursive;
}

h1 {
	font-size: 2.1em;
	text-align: center;
}

a:hover, a:focus {
	text-decoration:none!important;
}

@media (max-width: 767px) {
	.total-center {
		z-index: -1;
	}
}
.total-center {
	position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);   
}
.img-fluid {
	width: 100%;
}

@media (max-width: 767px) {
	.logo-top {
		max-width: 230px;
	}
	.navbar {
		padding: 0.5em 0.5em;
	}
	.navbar-brand {
		margin: 0 auto;
	}
	.navbar-nav {
		background-color: #fff;
	}
	.navbar-collapse {
		text-align: center;
	    border: 1px solid rgb(204, 204, 204);
	    /*box-shadow: 1px 1px 1px 1px rgba(122,121,122,0.3);*/
	}
	.navbar-toggler {
		padding-right: 0;
	}
	.navbar-toggler-icon {
	  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(59, 40, 139, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
	}	
	.dropdown {
		background-color: #f8f8f8;
	}

}

.nav-link {
	text-decoration: none;
	font-size: 1.1em;
    font-family: 'Open Sans', sans-serif;
    /*color: #bd3713;*/
    color: #111;
    
}
.nav-link.active {
	color: #bd3713;
}
.nav-link.active span:not(.sr-only),
.nav-link:hover span:not(.sr-only) {
	position: relative;
}
.nav-link.active span:not(.sr-only):not(.toggle-english):not(.toggle-japanese)::before,
.nav-link:hover span:not(.sr-only):not(.toggle-english):not(.toggle-japanese)::before { 
	position: absolute;
	content: url('../img/star02.png');
	width: 23px;
	height: 20px;
	left: -30px;
}


.dropdown-menu {
	text-align: center;
	border: none;
	border-radius: 0;
}


.logo-top:hover {
	opacity: 0.5;
}


.toggle-english, .toggle-japanese {
	position: relative;
	padding-left: 25px;
}
.toggle-english::before, 
.toggle-japanese::before {
	position: absolute;
	width: 24px;
	height: 24px;
	left: -2px;
}
.toggle-english::before {
	content: url('../img/gb_flag_25_brdr.png');
}
.toggle-japanese::before {
	content: url('../img/jp_flag_25_brdr.png');
}


@media (min-width: 768px) {
	header {
		border-bottom: 1px solid #111;
		padding-bottom: 10px;
	}
	.nav-item {
		padding: 0 1rem;
	}
	.nav-link.active span:not(.sr-only):not(.toggle-english):not(.toggle-japanese)::before,
	.nav-link:hover span:not(.sr-only):not(.toggle-english):not(.toggle-japanese)::before {
		left: 30%;
		bottom: -25px;
	}
	.nav-item.dropdown {
		background: none;
	}
	.nav-link:hover {
		color: #bd3713;	
	}
	.dropdown-menu {
		border: 1px solid #111;
	}
}


.footer-margin {
    min-height: calc(100vh - 250px);
}
.footer {
    height: 155px;
 	background-color: #fff;
 	font-size: 0.9em;
}

@media (min-width: 768px) {
	.footer {
	    width: 100%;
	    font-size: 1em;
	    border-top: 1px solid #000;
	}
	.footer-margin {
		min-height: calc(100vh - 266px);
	}
}



.panda-logo-main {
	max-width: 90%;
	margin: 0 auto 1em;
}

@media (min-width: 992px) {
	.panda-logo-main {
		max-width: 60vh;
		margin: 1em auto 1em;
	}
}


.map-box {
	overflow:hidden;
    padding-bottom:56.25%;
    position:relative;
    height:0;
    border: 1px solid rgba(117, 104, 173, 0.5);
}
.map-box iframe {
	left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}
.accesstext {
	text-align: center;
	padding-top: 2rem;
}


@media (min-width: 768px) {
	.accesstext {
	text-align: left;
	padding-top: 0;
	}
}

.req {
	color: #ff0000 !important;
	font-size: 0.8em !important;
}