@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@700&display=swap');
/* COMMON SET
--------------------------*/
html {
	height: 100%;
}
body {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	/* font-family: "游明朝", YuMincho, 'Yu Mincho', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif; */
	font-weight: 500;
	line-height: 1.6;
	font-size: 16px;
	color: #555555;
	text-align: center;
	width: 100%;
	min-height: 100%;
	position: relative;
	-webkit-text-size-adjust: 100%;
	background-size: cover;
	/*
	-webkit-animation: fadeIn .5s ease 0s 1 normal;
	animation: fadeIn .5s ease 0s 1 normal;
	*/
}
/*
@-webkit-keyframes fadeIn {
	0% {opacity: 0;}
	100% {opacity: 1;}
}
@keyframes fadeIn {
	0% {opacity: 0;}
	100% {opacity: 1;}
}
*/
ul,ol,li,dl,dt,dd {
	margin: 0;
	padding: 0;
	list-style: none;
}
img, svg {
	width: 100%;
	height: auto;
}
a:link,
a:visited {
	color: #0078dc;
	text-decoration: none;
}
a:hover,a:active {
	color: #f00;
	text-decoration: underline;
}
a:active,a:focus {
	outline: none;
}
a.btn img {
	opacity: 1;
	-webkit-transition: opacity 0.3s ease-out 0s;
	transition: opacity 0.3s ease-out 0s;
}
a:hover.btn img {
	opacity: 0.75;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
.nobr {
	display: none;
}
.onbr {
	display: inherit;
}
.switch_img {
	visibility: hidden;
}



/* WRAP
--------------------------*/
#wrap {
	width: 100%;
	height: 100%;
	position: relative;
}

/* HEADER
--------------------------*/
#header_wrap {
	width: 95%;
	max-width: 1040px;
	position: relative;
	margin: 0 auto;
	padding: 1em 0;
	text-align: left;
}
#header {
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#hd_logo {
	width: 65%;
	max-width: 320px;
	margin: 0;
}
#lng_cnt {
	width: 33%;
	max-width: 210px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#hd_contact {
	width: 38%;
	max-width: 80px;
	margin: 0;
}
#hd_lang {
	width: 58%;
	max-width: 120px;
	margin: 0;
    font-family: 'Roboto', sans-serif;
	line-height: 1;
}
#hd_lang li {
	margin: .2em auto;
	padding: .4em;
	border-radius: 3em;
	white-space: nowrap;
	text-align: center;
}
#hd_lang li.crnt {
	background: #0078dc;
}
#hd_lang li a {
	text-decoration: none;
}
#hd_lang li.crnt a {
	color: #fff;
	text-decoration: none;
}


/* NAVIGATION
--------------------------*/
#navigation_wrap {
	width: 100%;
	margin: 0 auto;
}
#navigation {
	display: block;
	width: 95%;
	max-width: 1040px;
	margin: 0 auto;
	padding: 0;
	position: relative;
}
#navigation li a {
	display: block;
}

#glnav {
	width: 100%;
}
#glnav ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: center;
}
#glnav li {
	font-weight: bold;
	margin: 0 1em;
	padding: 0 0 1em;
}
#glnav a {
	color: #003296;
}
#glnav a:hover {
	color: #f00;
}

#nav01 img,
#nav02 img,
#nav03 img,
#nav04 img {
	max-width: 24px;
	margin: 0 .2em 0 0;
	vertical-align: bottom;
}


#hb_menu {
	display: none;
	position: fixed;
	width: 50px;
	height: 50px;
	z-index: 8000;
	right: 15px;
	top: 15px;
	background: rgba(0,50,150,1);
	line-height: 100%;
	/*border-radius: 5px;*/
	cursor: pointer;
}
#nav_trgr,
#nav_trgr span {
	display: inline-block;
	transition: all 0.4s;
	box-sizing: border-box;
}
#nav_trgr {
	position: absolute;
	left: 12px;
	top: 14px;
	width: 26px;
	height: 22px;
}
#nav_trgr span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
}
#nav_trgr span:nth-of-type(1) {
	top: 0;
}
#nav_trgr span:nth-of-type(2) {
	top: 10px;
}
#nav_trgr span:nth-of-type(3) {
	bottom: 0;
}
#hb_menu.nav_open span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(-135deg);
	transform: translateY(10px) rotate(-135deg);
}
#hb_menu.nav_open span:nth-of-type(2) {
	opacity: 0;
}
#hb_menu.nav_open span:nth-of-type(3) {
	-webkit-transform: translateY(-10px) rotate(315deg);
	transform: translateY(-10px) rotate(315deg);
}

#glnav_sp {
	display: none;
	width: 100%;
	background: rgba(0,50,150,.95);
}



/* CONTENTS
--------------------------*/
#contents {
	width: 100%;
	margin: 0 auto;
}
.tt_news_topics,
.tt_development,
.tt_access_map {
	max-width: 480px;
	margin: 0 auto;
}



/* Google MAP
--------------------------*/
#gmap {
	width: 100%;
	margin: 0 auto;
	padding: 2em 0 0;
}




/* PAGE TOP BTN
--------------------------*/
#page_top {
	position: fixed;
	right: 0;
	bottom: 0;
	width: 50px;
	height: 50px;
	font-size: 50px;
	line-height: 1;
	z-index: 100;
}
#page_top a {
	display: block;
	background: rgba(0,120,220,1);
	color: #fff;
	transition: all .3s ease-out 0s;
}
#page_top a:hover,
#page_top a:active {
	background: rgba(0,120,220,.7);
}




/* FOOTER
--------------------------*/
#footer {
	width: 100%;
	margin: 0 auto;
	padding: 3em 0 0;
	background: rgba(0,50,150,1);
	color: #fff;
}
#footer a {
	color: #fff;
}
.footer_logo {
	width: 90%;
	max-width: 600px;
	margin: 0 auto;
	padding: 0 0 3em;
}
.footer_logo a {
	display: flex;
	justify-content: space-between;
}
.footer_logo a img {
	display: block;
	width: 46%;
}

#ft_nav {
	width: 90%;
	max-width: 720px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	text-align: left;
}
#ft_nav > ul > li > ul > li > a {
	font-size: .9em;
}
#ft_nav > ul > li > ul {
	margin: .5em 0 0;
}
#ft_nav li {
	line-height: 1.4;
}
#ft_nav > ul > li > ul > li:before {
	content: "\f105";
	font-family: "FontAwesome";
	margin: 0 .4em 0 0;
}
.ft_nav1,.ft_nav2,.ft_nav3 {
	width: auto;
	margin: 0 2em 0 0;
}

.ft_nav4 {
	width: 100%;
	margin: 1.5em auto 0;
	padding: 1.5em 0 0;
	border-top: 1px #fff solid;
	text-align: center;
}
.ft_nav1 > li,
.ft_nav2 > li {
	margin: 0 0 1em;
}
.ft_nav1 > li > a,
.ft_nav2 > li > a {
	font-weight: bold;
	text-decoration: underline;
}
.ft_inq a,
.ft_req a {
	display: block;
	width: 100%;
	margin: .5em 0;
	padding: 1em 0;
	color: #fff;
	background: #0078dc;
	font-size: 1.3em;
	font-weight: bold;
	letter-spacing: .1em;
	text-align: center;
	-webkit-transition: all 0.3s ease-out 0s;
	transition: all 0.3s ease-out 0s;
}
.ft_inq a:hover,
.ft_req a:hover {
	color: #0078dc !important;
	background: #fff;
	text-decoration: none;
}
.atn {
	font-size: .9em;
	margin: 0;
}
#zip {
	width: 90%;
	max-width: 680px;
	margin: 0 auto;
	padding: 2em 0 0;
}
#zip dl {
	display: inline-block;
	width: auto;
	margin: 0 auto;
	text-align: left;
}
#zip dt {
	margin: 0 0 .5em;
}
#zip dd {
	font-size: .9em;
}


#copyright {
	width: 100%;
	margin: 3em auto 0;
	padding: 1em 0;
	background: #fff;
	color: #555555;
}






/* 768px以下 --------------------------------
------------------------------------------*/
@media only screen and (max-width: 768px) {
body {
	line-height: 1.5;
	font-size: 15px;
}

/* HEADER
--------------------------*/


/* NAVIGATION
--------------------------*/


/* PAGE TOP BTN
--------------------------*/
#page_top {
	display: none !important;
	visibility: hidden !important;
}

/* FOOTER
--------------------------*/


}





/* 480px以下 --------------------------------
------------------------------------------*/
@media only screen and (max-width: 480px) {
.nobr {
	display: inherit;
}
.onbr {
	display: none;
}
body {
	line-height: 1.5;
	font-size: 14px;
}
/* HEADER
--------------------------*/
#header_wrap {
	padding: .7em 0;
}
#header {
	justify-content: space-between;
}



#hd_logo {
	max-width: 200px;
}
#lng_cnt {
	max-width: 70px;
	margin: 0 60px 0 0;
}

#hd_lang {
	width: 90%;
	font-size: 13px;
}
#hd_contact {
	display: none;
}




/* NAVIGATION
--------------------------*/
#hb_menu {
	display: block;
}
#navigation {
	position: fixed;
	z-index: 200;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: none;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
#glnav {
	display: none;
}
#glnav_sp {
	display: block;
	min-height: 100%;
	padding: 1.5em 0 3em;
	font-size: 16px;
	letter-spacing: 0em;
}
#glnav_sp > ul {
	width: 80%;
	margin: 0 auto;
}
#glnav_sp > ul > li {
	width: 100%;
	border-bottom: 2px rgba(255,255,255,.9) solid;
	font-weight: bold;
}
#glnav_sp > ul > li:last-child {
	border: none;
}
#glnav_sp > ul > li > ul {
	display: block;
}
#glnav_sp > ul > li > ul > li {
	width: 90%;
	margin: 0 auto;
	border-top: 1px rgba(255,255,255,.5) dotted;
	font-size: 15px;
	font-weight: 500;
}
#glnav_sp > ul > li > a > i {
	transition: all 0.2s;
}
#glnav_sp > ul > li > a > i.sp_open {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

#glnav_sp a {
	display: block;
	padding: .6em 1em;
	color: #fff;
}

#nav_logo {
	display: block;
	max-width: 240px;
	margin: 0 auto;
}
#nav_inq {
	padding: .5em 0;
}
#nav_inq span {
	display: inline-block;
	margin: 0 auto .5em;
	font-size: .8em;
	font-weight: 500;
	color: #fff;
}
#nav_inq a {
	width: 100%;
	padding: 1em;
	background: #0078dc;
	color: #fff;
}

#ch_lang {
	width: 80%;
	margin: .5em auto;
	padding: 1em;
	border-top: 2px rgba(255,255,255,1) solid;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
#ch_lang dt {
	display: block;
	width: 100%;
	margin: 0 auto .5em;
	color: #fff;
	font-size: .8em;
}
#ch_lang dd {
	width: auto;
	margin: 0;
}
#ch_lang dd:last-of-type{
	border-left: 1px dotted #fff;
}
#ch_lang > dd > a {
	padding: 0 1em;
	line-height: 1;
}

/* CONTENTS
--------------------------*/
.tt_news_topics,
.tt_development,
.tt_access_map {
	width: 80%;
}


/* FOOTER
--------------------------*/
.footer_logo {
	width: 75%;
	padding: 0;
}
.ft_nav1,.ft_nav2,.ft_nav3 {
	display: none;
}



}
