@charset "utf-8";
/* PC/スマホ共通表示 */

.-----PC_MOBILE_COMMON_CSS_START----- {}

* {
	margin: 0px;
	padding: 0px;
	list-style-type: none;
	-webkit-text-size-adjust: 100%;
	max-height: 999999px;
	font-style: normal;
	box-sizing:border-box;
}
body {
	font-family: 'Noto Sans', sans-serif;
	font-size: 15px;
	line-height: 170%;
	color: #333;
	background-image: url(../img/header_bg.png);
	background-repeat: repeat-x;
	background-position: center top;
}
body .lang_cn {
	font-family: 'Noto Sans SC', sans-serif;
}
img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}
table {
	border-collapse: collapse;
}
a:link,
a:visited {
	text-decoration: underline;
	color: #006699;
}
a:hover,
a:active {
	text-decoration: underline;
	color: #FF6600;
}
a .fa-icon {
	margin-left:0.2em;
	margin-right:0.1em;
}
.clear {
	clear: both;
	display: block;
	width: 100%;
	height:1px;
}

.mobile_nowrap {
	display: inline;
}
.pc_nowrap {
	display: none;
}
.mobile_only {
	display:none;
}
.pc_only {
	display: block;
}

#container {
	min-width: 1160px;
}
#header {
	width: 100%;
	min-width: 1100px;
	position: relative;
	margin-bottom:150px;
}
#header .logo {
	line-height:0px;
	padding-left:60px;
	padding-top:27px;
	height:107px;
}
#header .logo img {
	width:315px;
	height:auto;
}
#header .logo a {
	transition: 0.4s;
}
#header .logo a:hover {
	opacity:0.7;
}

#header .g_nav_open_btn {
	display: none;
}
#header .menu {

}
#header .g_nav {
	position: absolute;
	width: 100%;
	left: 0px;
	top: 176px;
}
#header .g_nav ul {
	box-sizing: border-box;
	width: 1100px;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: flex-start;
	background-image: url(../img/g_nav_bg.png);
	background-repeat: repeat-x;
	background-position: center center;
	height: 78px;
	margin-right: auto;
	margin-left: auto;
	border-radius:8px;
	position:relative;
	overflow:hidden;
	box-shadow: 0px 0px 4px #666;
}
#header .g_nav ul li {
	box-sizing: border-box;
	width: 217px;
	padding-left: 12px;
	background-image: url(../img/g_nav_point.png);
	background-repeat: no-repeat;
	background-position: left center;
}
#header .g_nav ul li:first-child {
	background-image: none;
}
#header .g_nav ul li a {
	box-sizing: border-box;
	width: 205px;
	height: 78px;
	flex-wrap: wrap;
	justify-content: center;
	justify-content: center;
	align-items: center;
	display: flex;
	line-height: 120%;
	font-size: 17px;
	font-weight: 600;
	text-align:center;
	color: #333;
	text-decoration: none;
	position: relative;
	padding-right: 0em;
	padding-left: 0em;
	padding-top: 2px;
	padding-bottom: 1px;
	transition:0.4s;
}

#header .g_nav ul li a:hover {
	color:#999;
}
#header .g_nav ul li a:hover  em{
	color: #FF6600;
}

#header .s_nav {
	position: absolute;
	top: 30px;
	right: 60px;
}
#header .s_nav ul {
	display:flex;
	align-content: center;
	align-items: center;
	justify-content: flex-end;
	flex-wrap:wrap;
}
#header .s_nav ul li {
	padding-left:25px;
}
#header .s_nav ul li a {
	text-decoration: none;
	line-height: 32px;
	display: block;
	transition:0.4s;
	padding-bottom:1px;
}
#header .s_nav ul li a:hover {
	opacity:0.6;
}

#header .s_nav ul li.en a {
	width: 166px;
	font-size: 16px;
	color: #FFF;
	text-align: center;
	font-weight: normal;
	background-color: #A59F89;
	border-radius: 5px;
	text-transform: uppercase;
}
#contents_area {
	width: 1100px;
	margin-left:auto;
	margin-right:auto;
	padding-top:45px;
}

#footer {
	width: 100%;
	background-image: url(../img/footer_bg.png);
	background-repeat: repeat-x;
	background-position: center top;
	color: #FFF;
	margin-top: 70px;
}
#footer .wrapper {
	box-sizing: border-box;
	width: 100%;
	height: 260px;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	text-align: center;
	padding-top:15px;
}
#footer .logo {
	display: block;
	width: 100%;
	line-height:0px;
	margin-bottom:17px;
}
#footer .logo img {
	width: 221px;
	height:auto;
}
#footer address {
	display:block;
	font-size:14px;
	line-height:150%;
	width:326px;
	padding-left:36px;
	text-align:left;
}

#footer address .location {
	display:block;
}
#footer address .tel {
	display:block;
}
#footer address .tel a {
	color:#FFF;
	text-decoration:none;
}
#footer address .fax {
	display:block;
}
#footer address .fax a {
	pointer-events:none;
	color:#FFF;
	text-decoration:none;
}
#footer .photo {
	display:block;
	width:204px;
	line-height:0px;
	text-align:left;
}

#footer .copyright {
	width:100%;
	display:block;
	font-size: 12px;
	margin-top:1.5em;
}

#page_top {
	width: 1050px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
#page_top a {
	box-sizing: border-box;
	position: fixed;
	bottom: 210px;
	right: 50px;
	height: 90px;
	width: 90px;
	z-index: 99999999;
	background-color: #C5AC6C;
	text-align: center;
	display: block;
	font-size: 14px;
	line-height: 120%;
	font-weight: bold;
	color: #FFF;
	text-decoration: none;
	border: 5px solid #EEE7D2;
	border-radius: 45px;
	padding-top: 17px;
	background-image: url(../img/pagetop_arrow.png);
	background-repeat: no-repeat;
	background-position: center 57px;
}
#page_top a:hover{
	opacity:0.7;
}

#contents_area .other_lang {
	padding-top: 35px;
	padding-bottom: 35px;
}
#lang_menu {
	width:100%;
	margin-bottom:30px;
}
#lang_menu ul {
	width:100%;
	box-sizing:border-box;
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
}
#lang_menu ul li {
	width: 16%;
	text-align: center;
}
#lang_menu ul li a {
	text-decoration: none;
	line-height: 32px;
	display: block;
	transition:0.4s;
	padding-bottom:1px;
	width: 100%;
	font-size: 16px;
	color: #FFF;
	text-align: center;
	font-weight: normal;
	background-color: #A59F89;
	border-radius: 5px;
	text-transform: uppercase;
	display: block;
}
#lang_menu ul li a:hover {
	opacity:0.6;
}
.-----PC_MOBILE_COMMON_CSS_END----- {}

/* スマートフォン用CSS */
@media screen and (max-width: 750px) {
	
.-----MOBILE_ONLY_CSS_START----- {}


body {
	font-size: 28px;
	line-height: 170%;
	width: 750px;
	background-image: url(../img/header_bg_sp.png);
}

img {
	max-width:700px;
	height:auto;
}
br.pc_nowrap {
	display: inline;
}
br.mobile_nowrap {
	display: none;
}

.mobile_only {
	display:block;
}
.pc_only {
	display: none;
}

#container {
	width: 750px;
	min-width: 750px;
	margin-right: auto;
	margin-left: auto;
	overflow: hidden;
	position: relative;
}
#header {
	height: 134px;
	min-width: 750px;
	z-index: 9999999999 !important;
	overflow: visible;
	margin-bottom:120px;
}
#header .wrapper {
	padding: 0px;
}

#header .logo {
	padding-top:34px;
	padding-left:40px;
	height:auto;
}
#header .logo img {
	width:348px;
	height:auto;
}
#header .logo a {
	transition:none;
}

#header #g_nav_open_btn {
	top: 15px;
	right: 20px;
	height: 100px;
	width: 100px;
	position: absolute;
	display: block;
	overflow: hidden;
	text-indent: -9999px;
	transition: none;
	z-index:1200 !important;

}
#header #g_nav_open_btn div {
	width: 76px;
	height: 7px;
	display: block;
	background-color: #22478C;
	position: absolute;
	transition:0.3s;
	left: 12px;
	top: 45px;
}
#header #g_nav_open_btn div:nth-child(1) {
	top: 22px;
}
#header #g_nav_open_btn div:nth-child(4) {
	top: 71px;
}
#header #g_nav_open_btn.on div {
	background-color: #FFF;
}
#header #g_nav_open_btn.on div:nth-child(1),
#header #g_nav_open_btn.on div:nth-child(4) {
	opacity:0;
	top: 47px;
}
#header #g_nav_open_btn.on div:nth-child(2) {
	transform:rotate(45deg);
}
#header #g_nav_open_btn.on div:nth-child(3) {
	transform:rotate(-45deg);
}



#header .menu {
	display: block;
	position: absolute;
	width: 750px;
	left: 0px;
	top: 0px;
	display: none;
	z-index: 9999999999;
	background-color: rgba(32,77,151,0.95);
	z-index: 100;
	padding-right: 35px;
	padding-left: 35px;
}
#header .g_nav {
	display:block;
	position:static;
	padding-top: 140px;
}
#header .g_nav ul {
	box-sizing: border-box;
	width: 100%;
	display: block;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: flex-start;
	background-image: none;
	background-repeat: repeat-x;
	background-position: center center;
	height: auto;
	border-radius:0;
	position: static;
	overflow:hidden;
	box-shadow: none;
	border-top-width: 2px;
	border-top-style: solid;
	border-top-color: #FFF;	
}
#header .g_nav ul li {
	width: 100%;
	padding-left: 0;
	background-image: none;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;	
}
#header .g_nav ul li a {
	width: 100%;
	height: 117px;
	line-height: 130%;
	font-size: 34px;
	color: #FFF;
	position: static;
	padding: 0;
	transition:none;
}
#header .g_nav ul li a em {
	display:none;
}
#header .g_nav ul li a:hover {
	color:#FFF;
	opacity:0.7;
}

#header .s_nav {
	display:block;
	position: static;
	padding-bottom: 110px;

}
#header .s_nav ul {
	padding-top:50px;
	width:100%;
	justify-content: center;
}
#header .s_nav ul li {
	width:50%;
	padding-left:0px;
}
#header .s_nav ul li a {
	transition:none;
}
#header .s_nav ul li a:hover {
	opacity:0.6;
}

	
#header .s_nav ul li.contact a,
#header .s_nav ul li.sitemap a {
	width:100%;
	display:block;
	color: #FFF;
	font-size: 34px;
	padding-left: 0;
	text-align:center;
	line-height:52px;
	background-image: none !important;
}
#header .s_nav ul li.sitemap a {
	border-left-width: 2px;
	border-left-style: solid;
	border-left-color: #FFF;
}
#header .s_nav ul li.en {
	width: 100%;
	padding-top:48px;
}
#header .s_nav ul li.en a {
	width: 370px;
	font-size: 36px;
	color: #2B4D96;
	text-align: center;
	font-weight: normal;
	background-color: #FFFFFF;
	border-radius: 8px;
	line-height: 70px;
	margin-right: auto;
	margin-left: auto;
	
}

#contents_area {
	width:705px;
}

#footer {
	background-image: url(../img/footer_bg_sp.png);
	margin-top: 50px;
}
#footer .wrapper {
	height: 450px;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	text-align: center;
	padding-top:10px;
}
#footer .logo {
	margin-bottom:25px;
	padding-top:10px;
}
#footer .logo img {
	width: 263px;
	height:auto;
}
#footer address {
	font-size: 21px;
	line-height: 125%;
	width: 360px;
	padding-left: 0px;
}
#footer .location a {
	color:#FFF;
	text-decoration:none;
	pointer-events:none;
}
#footer .photo {
	width:300px;
}
#footer .photo img {
	width:100%;
	height:auto;
}
#footer .access {
	padding-top:30px;
	padding-bottom:20px;
}
#footer .access a {
	width: 300px;
	font-size: 25px;
	line-height: 44px;
	border-radius:22px;
	transition:none;
}

#footer .copyright {
	font-size: 18px;
}

#page_top {
	width: 750px;
}
#page_top a {
	right:25px;
	height: 120px;
	width: 120px;
	font-size: 20px;
	border: 7px solid #EEE7D2;
	border-radius: 60px;
	padding-top: 25px;
	background-position: center 80px;
}
#lang_menu {
	width:100%;
	margin-bottom:30px;
}
#lang_menu ul li {
	width: 32.2%;
	margin-bottom:13px;
}
#lang_menu ul li a {
	line-height: 54px;
	font-size: 26px;
	border-radius: 6px;
}


.-----MOBILE_ONLY_CSS_END----- {}

	
}
