@charset "utf-8";

@media only screen and (max-width:640px) {
body {
	font-size: 4.0625vw;
}

#wrapper {
	width: 100%;
	min-width: inherit;
	border-top: 4px solid #004490;
}

.inner {
	width: 94vw;
	padding: 0 3vw;
}

.spview {
	display: block;
}

.pcview {
	display: none;
}


/*------------------------------------------------
ヘッダー
------------------------------------------------*/

#headerContainer .inner h1 img {
	width: 61vw;
}

#headerContainer .inner h1 span {
	font-size: 3.12vw;
}

.hArea {
	display: none;
}


/*------------------------------------------------
グローバルナビ
------------------------------------------------*/

.btnMenu {
	display: block;
}

#headerContainer nav {
	display: none;
	position: absolute;
	width: 100%;
	z-index: 1000;
}

#headerContainer .btnMenu {
	display: block;
	position: absolute;
	width: 14.8vw;
	top: 0;
	right: 0;
	z-index: 1000;
	text-align: right;
	background: #003D82;
}

#headerContainer .btnMenu a {
	display: block;
    width: 14.8vw;
    height: 14.8vw;
    z-index: 3;
	margin: 0 0 0 auto;
	position: relative;
}

#headerContainer .btnMenu a span {
    display: block;
    background: #fff;
    width: 7.8vw;
    height: 4px;
    position: absolute;
    left: 3.5vw;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
}

#headerContainer .btnMenu a span:first-child {
	top: 3.8vw;
}

#headerContainer .btnMenu a span:nth-child(2) {
	margin-top: -2px;
	top: 47.5%;
}

#headerContainer .btnMenu a span:nth-child(3)  {
    bottom: 4.7vw;
}

#headerContainer .btnMenu a strong {
	color: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
	font-size: 10px;
	display: block;
	text-align: center;
	width: 14.8vw;
	letter-spacing: -0.05em;
}

#headerContainer .btnMenu.active a span:first-child {
    -webkit-transform: translateY(2.6vw) rotate(45deg);
    -moz-transform: translateY(2.6vw) rotate(45deg);
    -ms-transform: translateY(2.6vw) rotate(45deg);
    transform: translateY(2.6vw) rotate(45deg);
}

#headerContainer .btnMenu.active a span:nth-child(2) {
    opacity: 0;
}

#headerContainer .btnMenu.active a span:nth-child(3)  {
    -webkit-transform: translateY(-2.6vw) rotate(-45deg);
    -moz-transform: translateY(-2.6vw) rotate(-45deg);
    -ms-transform: translateY(-2.6vw) rotate(-45deg);
    transform: translateY(-2.6vw) rotate(-45deg);
}

#headerContainer nav {
	background: none;;
}

#headerContainer nav ul {
	width: auto;
	margin: 0;
	background: none;
	padding-right: 0;
}

#headerContainer nav ul li {
	float: none;
	background: none;
	padding-left: 0;
	position: relative;
	height: auto !important;
	border-bottom: none !important;
}

#headerContainer nav ul li a {
	display: block;
	color: #fff;
	text-decoration: none;
	font-size: 16px;
	font-weight: normal;
	line-height: 1.4;
	text-align: left;
	width: 100%;
	height: auto;
	background: #003d82 url(../images/common/icon_arrow04b.png) 95% center no-repeat;
	padding: 3.9vw 0 3.9vw 3.1vw;
	border-bottom: 1px solid #fff;
}

#headerContainer nav ul.ex li a {
	background: #003d82;
}

#headerContainer nav ul li a.open {
	background: #003d82 url(../images/common/icon_arrow04t.png) 95% center no-repeat;
}

#headerContainer nav ul li.gnavi04 a {
	width: 100%;
}

#headerContainer nav ul li.gnavi05 a {
	width: 100%;
	line-height: 1.4;
	padding-top: 3.9vw;
	height: auto;
}

#headerContainer nav ul li.gnavi05 a span {
	font-size: 12px;
	font-weight: normal;
	text-align: left;
	display: block;
	letter-spacing: -0.05em;
}

#headerContainer nav ul li a:hover {
	border-bottom: 1px solid #fff;
	height: auto;
}

#headerContainer nav ul li.gnavi05 a:hover {
	border-bottom: 1px solid #fff;
	height: auto;
}


/*------------------------------------------------
ローカルナビ
------------------------------------------------*/

.lnaviArea {
	display: none;
	position: static;
}

#headerContainer nav ul li .lnaviArea {
	display: none;
	position: static;
}

#headerContainer nav ul li .lnaviArea ul {
	padding: 0;
}

#headerContainer nav ul li .lnaviArea ul li {
	margin: 0;
	border-bottom: 1px solid #cccccc !important;
	display: block;
}

#headerContainer nav ul li .lnaviArea ul li a{
	background: #fff url(../images/common/icon_arrow05.png) 3.1vw center no-repeat;
	background-size: 1.3vw auto;
	color: #333;
	padding-left: 7vw;
	border-bottom: none;
}

#headerContainer nav ul li .lnaviArea ul li a:hover {
	border-bottom: none;
	height: auto;
	opacity: 1;
}

/*------------------------------------------------
パンくず
------------------------------------------------*/

.breadcrumb {
	display: none;
}

/*------------------------------------------------
メイン
------------------------------------------------*/

.contentArea,
.sideArea {
	width: 100%;
	float: none;
}
.sideArea {
	padding-left: 1.5625vw;
}

/*------------------------------------------------
フッターナビ
------------------------------------------------*/

.fnaviArea li {
	float: none;
}

.fnaviArea li.fnavi01,
.fnaviArea li.fnavi02,
.fnaviArea li.fnavi03{
	width: 100%;
	margin: 0 0 1.5vw;
}

.fnaviArea li.fnavi01 a,
.fnaviArea li.fnavi02 a,
.fnaviArea li.fnavi03 a {
	text-align: left;
	font-size: 4.6875vw;
	padding: 1.875vw 0 1.875vw 20.3125vw !important;
	box-shadow: 0 1px 1px rgba(0,0,0,0.1);
	line-height: 6.7vw;
	height: 6.4vw;
	display: table-cell;
	vertical-align: middle;
	width: 73.4375vw;
}
.fnaviArea li.fnavi01 a span,
.fnaviArea li.fnavi02 a span,
.fnaviArea li.fnavi03 a span {
	font-size: 3.75vw;
	display: block;
	font-weight: normal;
	color: #1a1a1a;
}

.fnaviArea li.fnavi01 a {
	background: url(../images/top/ico_top01@2x.png) 1.5625vw center no-repeat, url(../images/top/bg_nav@2x.jpg) center center no-repeat;
	background-size: 15.78vw auto, cover;
}
.fnaviArea li.fnavi02 a {
	background: url(../images/top/ico_top02@2x.png) 1.5625vw center no-repeat, url(../images/top/bg_nav@2x.jpg) center center no-repeat;
	background-size: 15.78vw auto, cover;
}
.fnaviArea li.fnavi03 a {
	background: url(../images/top/ico_top03@2x.png) 1.5625vw center no-repeat, url(../images/top/bg_nav@2x.jpg) center center no-repeat;
	background-size: 15.78vw auto, cover;
}

.fnaviArea li.fnavi01 a img,
.fnaviArea li.fnavi02 a img,
.fnaviArea li.fnavi03 a img {
	display: none;
}

.fnaviArea li.fnavi03 {
	margin-bottom: 4.6875vw;
}

.fnaviArea li.fnavi04,
.fnaviArea li.fnavi05,
.fnaviArea li.fnavi06,
.fnaviArea li.fnavi07,
.fnaviArea li.fnavi08,
.fnaviArea li.fnavi09{
	width: 100%;
	margin: 0 0 1px;
}

.fnaviArea li.fnavi04 a,
.fnaviArea li.fnavi05 a,
.fnaviArea li.fnavi06 a,
.fnaviArea li.fnavi07 a,
.fnaviArea li.fnavi08 a,
.fnaviArea li.fnavi09 a{
	display: block;
	position: relative;
	width: auto;
	height: 14.0625vw;
	line-height: 14.0625vw;
	font-size: 4.0625vw;
}


/*------------------------------------------------
フッター
------------------------------------------------*/

footer {
	background: #fff;
	border-top: 1px solid #e8e8e8;
}

footer .inner {
	padding: 0;
}

footer .inner ul {
	display: none;
}

.faddress {
	display: none;
}

footer small {
	display: block;
	font-size: 3.34vw;
	text-align: center;
	color: #004490;
	padding: 3.125vw 0;
}
.pagetop {
	width: 15.625vw;
	right: 3.125vw;
	bottom: 3.125vw;
}
.pagetop img {
	width: 100%;
}
}