@charset "utf-8";

/* --------------------------------------------------------------------------------------
 基本設定
--------------------------------------------------------------------------------------- */

/* 基本フォント ------------------------------ */

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}

body {
	color: #333;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-size: 75%;
	line-height: 1.5;
}

input,textarea,select {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-size: 100%;
}

.font01 {
	font-family: Helvetica Neue, Helvetica, Verdana, Arial;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
	font-weight: normal;
}

/*\*/
* html table {
	font-size: 100%;
	line-height: 1.5;
}
/**/


/* 基本タグ ------------------------------ */

body,div,
h1,h2,h3,h4,h5,h6,
dl,dt,dd,ul,ol,li,
p,blockquote,pre,cite,code,caption,
form,fieldset,legend,input,textarea,select,option,label {
	margin: 0;
	padding: 0;
}

body {
	background: #fff;
	text-align: left;
}

img,table {
	border: none;
}

table {
	border-collapse: collapse;
}

ul {
	list-style: none;
}

li img,
dt img {
	vertical-align: bottom;
}

address,em,cite {
	font-style: normal;
}


/* 基本テキストリンク ------------------------------ */

a {
	overflow: hidden;
}

a:link {
	color: #6f89ac;
	text-decoration: none;
}
a:visited {
	color: #6f89ac;
	text-decoration: none;
}
a:hover {
	color: #c30;
	text-decoration: underline;
}
a:active {
	color: #c30;
	text-decoration: underline;
}

.linkBox {
	cursor: pointer;
}


/* --------------------------------------------------------------------------------------
 float解除
--------------------------------------------------------------------------------------- */

.clearfix:after { content:"."; display:block; height:0; clear:both; visibility:hidden;font-size: .1em;}
.clearfix { display:inline-block; }
/*\*/
* html .clearfix { height:1%; }
.clearfix { display:block; }
/**/


/* --------------------------------------------------------------------------------------
 レイアウト枠
--------------------------------------------------------------------------------------- */

#wrap {
	min-width: 1200px;
	margin: 0 auto;
}
.inner {
	width: 1200px;
	margin: 0 auto;
}
img {
	max-width: 100%;
}
.pcHide {
	display: none !important;
}

@media screen and (max-width: 1230px) {
#wrap {
	min-width: auto; /* ie */
	min-width: initial;
	overflow: hidden;
}
.inner {
	width: auto;
}
}

@media screen and (max-width: 640px) {
.pcHide {
	display: block !important; /* ie */
	display: initial !important;
}
.spHide {
	display: none !important;
}
}

/* 基本スタイル ------------------------------ */

h3.style01 {
	text-align: center;
	font-size: 233.3%;
	font-weight: bold;
}
h3.style01 br {
	display: none;
}
h3.style01 br.initial {
	display: inline; /* ie */
	display: 35px;
}
h3.style01 span {
	display: block;
	font-size: 57.1%;
}
h4.style01 {
	position: relative;
	width: 980px;
	margin: 0 auto;
	padding: 0 0 18px;
	border-bottom: 1px solid #ccc;
	text-align: center;
	font-size: 183.3%;
	font-weight: bold;
	color: #234575;
}
h4.style01:after {
	position: absolute;
	left: 50%;
	bottom: -2px;
	width: 80px;
	margin: 0 0 0 -40px;
	border-bottom: 2px solid #234575;
	content: "";
}
h4.style01 br {
	display: none;
}
h4.style01 br.initial {
	display: inline; /* ie */
	display: initial;
}
h5.style01 {
	padding: 17px 0;
	border-top: 3px solid #234575;
	border-bottom: 1px solid #234575;
	text-align: center;
	font-size: 133.3%;
	font-weight: bold;
	color: #234575;
}
h5.style01 br {
	display: none;
}
h5.style01 br.initial {
	display: inline; /* ie */
	display: initial;
}

.anchorLink {
	width: 980px;
	margin: 0 auto;
}
.anchorLink ul {
	display: table;
	width: 100%;
	border: 1px solid #ccc;
	text-align: center;
	line-height: 1.35;
	font-size: 116.7%;
}
.anchorLink ul li {
	display: table-cell;
	vertical-align: middle;
	box-sizing: border-box;
	width: 25%;
	border-right: 1px solid #ccc;
}
.anchorLink ul li:last-child {
	border-right: none;
}
.anchorLink ul li a {
	display: block;
	padding: 20px 0 16px;
	color: #333;
	text-decoration: none;
}
.anchorLink ul li a span {
	display: block;
	padding: 0 0 16px;
	background: url(../img/ico_arw_anchorLink01.png) no-repeat center bottom;
	background-size: 10px;
}

@media screen and (max-width: 980px) {
h3.style01 {
	width: auto;
	margin: 0 7.29%;
}
h3.style01 br {
	display: inline; /* ie */
	display: initial;
}
h4.style01 {
	width: auto;
	margin: 0 7.29%;
}
h4.style01 br {
	display: inline; /* ie */
	display: initial;
}

.anchorLink {
	width: auto;
	margin: 0 7.29%;
}
.anchorLink ul {
	font-size: 100%;
}
}

@media screen and (max-width: 640px) {
h3.style01 {
	margin: 0 4.69%;
	font-size: 150%;
}
h3.style01 span {
	font-size: 66.7%;
}
h4.style01 {
	margin: 0 4.69%;
	padding: 0 0 8px;
	line-height: 1.375;
	font-size: 100%;
}
h4.style01:after {
	width: 13.8%;
	margin: 0 0 0 -6.9%;
}
h5.style01 {
	padding: 6px 0;
	font-size: 100%;
}

.anchorLink {
	margin: 0 4.69%;
}
.anchorLink ul {
	display: block;
}
.anchorLink ul li {
	display: block;
	width: 100%;
	border-bottom: 1px solid #ccc;
}
.anchorLink ul li:last-child {
	border-bottom: none;
}
.anchorLink ul li a {
	padding: 13px;
}
.anchorLink ul li a span {
	padding: 0;
	background: url(../img/ico_arw_anchorLink01.png) no-repeat right center;
	background-size: 10px;
}
}

/* --------------------------------------------------------------------------------------
 ヘッダー
--------------------------------------------------------------------------------------- */

header {
	position: absolute;
	top: 20px;
	left: 0;
	width: 100%;
	z-index: 100;
}
header.fixed {
	position: fixed;
	top: 0;
	background: rgba(255,255,255,.8)
}
header .inner {
	width: auto;
	margin: 0 60px 0 68px;
}
header .hdTop {
	float: left;
	width: 184px;
	padding: 9px 0 6px;
}
header .logo {
	font-size: 0;
}
header .logo a {
	display: block;
	padding: 24.4565% 0 0;
	background: url(../img/logo02.png) no-repeat left center;
	background-size: contain;
}
header.fixed .logo a {
	padding: 0;
	background: none;
}
header .logo a img {
	display: none;
}
header.fixed .logo a img {
	display: inline; /* ie */
	display: initial;
}
header .hdIco {
	display: none;
}
header .hdMenu {
	float: right;
	padding: 15px 150px 0 0;
}
header .hdMenu .gNav > li {
	float: left;
	margin: 0 0 0 20px;
	font-size: 14px;
	font-weight: bold;
}
header .hdMenu .gNav > li > a {
	position: relative;
	display: block;
	padding: 12px 10px 9px;
	border-bottom: 3px solid transparent;
	color: #fff;
	text-decoration: none;
}
header.fixed .hdMenu .gNav > li > a {
	color: #333;
}

header .hdMenu .gNav > li:hover a {
	border-bottom: 3px solid rgba(255,255,255,.5);
}
header.fixed .hdMenu .gNav > li:hover a {
	border-bottom: 3px solid #3b649c;
}
header .hdMenu .gNav li .sub {
	position: absolute;
	left: 0;
	width: 100%;
	height: 0;
	background: rgba(0,40,95,.90);
	text-align: center;
	letter-spacing: -.5em;
	overflow: hidden;
	opacity: 0;
	-webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
header .hdMenu .gNav li.active .sub {
	height: auto;
	opacity: 1;
}
header .hdMenu .gNav li .sub ul {
	display: inline-block;
	margin: 43px 0 37px;
	padding: 0 10px;
	vertical-align: top;
}
header .hdMenu .gNav li.company .sub ul {
	margin: 43px 0 51px;
}
header .hdMenu .gNav li .sub ul:nth-child(1) {
	width: 320px;
}
header .hdMenu .gNav li .sub ul:nth-child(2) {
	width: 640px;
	border-left: 1px solid rgba(255,255,255,.5);
}
header .hdMenu .gNav li.recruit .sub ul {
	width: 100% !important;
}
header .hdMenu .gNav li .sub ul li {
	position: relative;
	display: inline-block;
	vertical-align: top;
	line-height: 14px;
	font-size: 12px;
	letter-spacing: 0;
}
header .hdMenu .gNav li .sub ul:nth-child(1) li {
	width: 87.5%;
	margin: 24px 6.25% 54px;
}
header .hdMenu .gNav li .sub ul:nth-child(2) li {
	width: 43.75%;
	margin: 24px 3.125% 54px;
}
header .hdMenu .gNav li.recruit .sub ul li {
	max-width: 280px;
	margin: 24px 3.125% 54px;
}
header .hdMenu .gNav li.company .sub ul:nth-child(1) li,
header .hdMenu .gNav li.ourservice .sub ul:nth-child(1) li:nth-child(2) {
	margin: 24px 6.25% 0;
}
/*header .hdMenu .gNav li.company .sub ul:nth-child(2) li,
header .hdMenu .gNav li.ourservice .sub ul:nth-child(2) li:nth-child(3) ,
header .hdMenu .gNav li.ourservice .sub ul:nth-child(2) li:nth-child(4) ,
header .hdMenu .gNav li.csr .sub ul:nth-child(2) li:nth-child(3) ,
header .hdMenu .gNav li.csr .sub ul:nth-child(2) li:nth-child(4) ,
header .hdMenu .gNav li.recruit .sub ul li {
	margin: 24px 3.125% 0;
}*/
header .hdMenu .gNav li .sub ul li a {
	display: block;
	padding: 50% 0 0;
	border: none !important;
	color: #fff;
}
@media screen and (max-width: 640px) {
header .hdMenu .gNav li .sub ul li.nav0203 a,
	header .hdMenu .gNav li .sub ul li.nav0204 a,
	header .hdMenu .gNav li .sub ul li.nav0205 a,
	header .hdMenu .gNav li .sub ul li.nav0206 a,
	header .hdMenu .gNav li .sub ul li.nav0207 a,
	header .hdMenu .gNav li .sub ul li.nav0208 a{
		padding: 67% 0 0;
	color: #333;
}
}

header .hdMenu .gNav li .sub ul li.nav0101 a {
	background: url(../img/bg_gNav0101.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0102 a {
	background: url(../img/bg_gNav0102.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0103 a {
	background: url(../img/bg_gNav0103.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0201 a {
	background: url(../img/bg_gNav0201.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0202 a {
	background: url(../img/bg_gNav0202.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0203 a {
	background: #fff url(../img/bg_gNav0203.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0204 a {
	background: #fff url(../img/bg_gNav0204.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0205 a {
	background: #fff url(../img/bg_gNav0205.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0206 a {
	background: #fff url(../img/bg_gNav0206.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0207 a {
	background: #fff url(../img/bg_gNav0207.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0208 a {
	background: #fff url(../img/bg_gNav0208.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0301 a {
	background: url(../img/bg_gNav0301.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0302 a {
	background: url(../img/bg_gNav0302.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0303 a {
	background: url(../img/bg_gNav0303.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0304 a {
	background: url(../img/bg_gNav0304.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0305 a {
	background: url(../img/bg_gNav0305.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0501 a {
	background: url(../img/bg_gNav0501.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li.nav0502 a {
	background: url(../img/bg_gNav0502.jpg) no-repeat center top;
	background-size: contain;
}
header .hdMenu .gNav li .sub ul li a span {
	position: absolute;
	top: -20px;
	left: 0;
	box-sizing: border-box;
	width: 100%;
	padding: 0 0 8px 12px;
	background: url(../img/ico_arw01.png) no-repeat left 2px;
	text-align: left;
}
header .hdMenu .gNav li .sub ul li.nav0203 a span {
	letter-spacing: -.025em;
	white-space: nowrap;
}
header .hdMenu .gNav li .sub ul li a span.spHide {
	position: static;
	top: auto;
	display: inline;
	width: auto;
	padding: 0;
	background: none;
}
header .hdMenu .gNav li .sub ul li a span br {
	display: none;
}
header .hdMenu .langMenu {
	position: absolute;
	top: 20px;
	right: 60px;
}
header .hdMenu .langMenu > li {
	width: 110px;
	box-sizing: border-box;
	border: 1px solid #fff;
	border-radius: 2px;
	font-size: 11px;
}
header.fixed .hdMenu .langMenu > li {
	border: 1px solid #9e9e9e;
}
header .hdMenu .langMenu > li a {
	display: block;
	padding: 6px 7px;
	color: #fff;
	text-decoration: none;
}
header.fixed .hdMenu .langMenu > li a {
	color: #666;
}
header .hdMenu .langMenu > li a span {
	display: block;
	background: url(../img/ico_arw_langMenu02.png) no-repeat right center;
}
header.fixed .hdMenu .langMenu > li a span {
	background: url(../img/ico_arw_langMenu01.png) no-repeat right center;
}
header .hdMenu .langMenu > li ul {
	display: none;
}
header .hdMenu .langMenu > li ul li {
	border-top: 1px solid #fff;
}
header.fixed .hdMenu .langMenu > li ul li {
	border-top: 1px solid #9e9e9e;
}
header .hdMenu .langMenu > li ul li a:hover {
	background: rgba(255,255,255,.5);
}

@media screen and (max-width: 1230px) {
header .inner {
	margin: 0 3.13%;
}
header .hdMenu .gNav > li {
	margin: 0 0 0 10px;
}
header .hdMenu .gNav > li > a {
	padding: 12px 7px 9px;
}
header .hdMenu .gNav li .sub ul:nth-child(1) {
	width: 32%;
}
header .hdMenu .gNav li .sub ul:nth-child(2) {
	width: 64%;
}
header .hdMenu .gNav li .sub ul li {
	font-size: 11px;
}
}

@media screen and (max-width: 980px) {
header {
	top: 0;
	background: rgba(255,255,255,.8)
}
header .hdTop {
	width: 19.17%;
	padding: 56px 0 12px;
}
header .logo a {
	padding: 0;
	background: none;
}
header .logo a img {
	display: inline; /* ie */
	display: initial;
}
header .hdMenu {
	padding: 55px 0 0 0;
}
header .hdMenu .gNav > li > a {
	padding: 12px 7px;
	color: #333;
}
header .hdMenu .gNav li .sub ul {
	margin: 33px 0 28px;
	padding: 0;
}
header .hdMenu .gNav li .sub ul:nth-child(1) li {
	margin: 18px 6.25% 40px;
}
header .hdMenu .gNav li .sub ul:nth-child(2) li {
	margin: 18px 3.125% 40px;
}
header .hdMenu .gNav li .sub ul li {
	font-size: 10px;
}
header .hdMenu .gNav li.company .sub ul:nth-child(1) li,
header .hdMenu .gNav li.ourservice .sub ul:nth-child(1) li:nth-child(2) {
	margin: 18px 6.25% 0;
}
header .hdMenu .gNav li.company .sub ul:nth-child(2) li,
header .hdMenu .gNav li.ourservice .sub ul:nth-child(2) li:nth-child(3) ,
header .hdMenu .gNav li.ourservice .sub ul:nth-child(2) li:nth-child(4) ,
header .hdMenu .gNav li.csr .sub ul:nth-child(2) li:nth-child(3) ,
header .hdMenu .gNav li.csr .sub ul:nth-child(2) li:nth-child(4) {
	margin: 18px 3.125% 0;
}
header .hdMenu .gNav li .sub ul li a span {
	padding: 0 0 8px;
	background: none;
}
header .hdMenu .gNav li .sub ul li a span br {
	display: inline; /* ie */
	display: initial;
}
header .hdMenu .langMenu {
	top: 20px;
	right: 3.13%;
}
header .hdMenu .langMenu > li {
	border: 1px solid #9e9e9e;
}
header .hdMenu .langMenu > li a {
	color: #666;
}
header .hdMenu .langMenu > li a span {
	background: url(../img/ico_arw_langMenu01.png) no-repeat right center;
}
header .hdMenu .langMenu > li ul li {
	border-top: 1px solid #9e9e9e;
}
}

@media screen and (max-width: 767px) {
header .hdMenu .gNav > li {
	margin: 0 0 0 7px;
	font-size: 12px;
}
header .hdMenu .gNav > li > a {
	padding: 12px 5px;
}
header .hdMenu .langMenu > li {
	font-size: 10px;
}
}

@media screen and (max-width: 640px) {
body.scroll {
	height: 100%;
	overflow: hidden;
}
.overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #00285f;
	opacity: .95;
	display: none;
	z-index: 1;
}
header {
	position: fixed;
	background: none;
}
header.active {
	height: 100%;
	overflow-y: scroll;
	z-index: 10;
}
header .inner {
	margin: 0;
}
header .hdTop {
	float: none;
	width: auto;
	padding: 0;
	background: #fff;
}
header.active .hdTop {
	background: transparent;
}
header .logo {
	float: left;
	width: 116px;
	margin: 0 0 0 14px;
	padding: 10px 0 12px;
}
header .hdIco {
	display: block;
	float: right;
	margin: 0;
	padding: 0;
	font-size: 14px;
}
header .hdIco a {
	display: block;
	padding: 13px 14px 11px 16px;
	color: #00275e;
	text-decoration: none;
}
header .hdIco.active a {
	color: #fff;
}
header .hdIco a .ico {
	display: inline-block;
	width: 28px;
	height: 26px;
	margin: 0 0 0 9px;
	vertical-align: middle;
}
header .hdIco a .ico span {
	display: inline-block;
	position: relative;
	width: 25px;
	border-top: 2px solid #00275e;
	margin: 0 auto;
	vertical-align: middle;
	-webkit-transition-duration: .3s;
	transition-duration: .3s;
}
header .hdIco a .ico span:before {
	position: absolute;
	bottom: 9px;
	left: 0;
	width: 100%;
	border-top: 2px solid #00275e;
	content: "";
	-webkit-transition-duration: .3s;
	transition-duration: .3s;
}
header .hdIco a .ico span:after {
	position: absolute;
	top: 7px;
	left: 0;
	width: 100%;
	border-top: 2px solid #00275e;
	content: "";
	-webkit-transition-duration: .3s;
	transition-duration: .3s;
}
header .hdIco.active a .ico span {
	border-top: 2px solid transparent;
}
header .hdIco.active a .ico span:before {
	border-top: 2px solid #fff;
	-webkit-transform-origin: center center;
	transform-origin: center center;
	-webkit-transform: rotate(135deg) translate(5.5px,-7.25px);
	transform: rotate(135deg) translate(5.5px,-7.25px);
}
header .hdIco.active a .ico span:after {
	border-top: 2px solid #fff;
	-webkit-transform: rotate(-135deg) translate(5.25px,7px);
	transform: rotate(-135deg) translate(5.25px,7px);
}
header .hdMenu {
	position: relative;
	clear: both;
	float: none;
	margin: 0;
	padding: 0;
	display: none;
}
header .hdMenu .gNav {
	border-top: 1px solid rgba(255,255,255,.2);
}
header .hdMenu .gNav > li {
	float: none;
	margin: 0;
	border-bottom: 1px solid rgba(255,255,255,.2);
	font-size: 12px;
	font-weight: normal;
}
header .hdMenu .gNav > li:hover a {
	border-bottom: none;
}
header .hdMenu .gNav > li > a {
	padding: 13px 4.69%;
	color: #fff;
}
header .hdMenu .gNav > li > a:hover:after {
	content: none;
}
header .hdMenu .gNav > li > a span {
	display: block;
	padding: 2px 0;
	background: url(../img/ico_arw_gNav01.png) no-repeat right center;
	background-size: contain;
}
header .hdMenu .gNav > li.accordion > a span {
	background: url(../img/ico_gNav_open.png) no-repeat right center;
	background-size: contain;
}
header .hdMenu .gNav > li.accordion.active > a span {
	background: url(../img/ico_gNav_close.png) no-repeat right center;
	background-size: contain;
}
header .hdMenu .gNav li .sub {
	position: static;
	background: none;
}
header .hdMenu .gNav li .sub ul {
	display: block;
	max-width: auto !important; /* ie */
	max-width: initial !important;
	width: auto !important;
	margin: 0 1.56% !important;
	border: none !important;
}
header .hdMenu .gNav li .sub ul li {
	position: relative;
	float: left;
	max-width: inherit !important;
	width: 45.16% !important;
	margin: 0 2.42% 10px !important;
	line-height: 1.2;
	font-weight: bold;
}
header .hdMenu .gNav li.recruit .sub ul li {
	width: 43.90% !important;
}
header .hdMenu .gNav li .sub ul li.nav0203 a {
	background: #00285f url(../img/bg_gNav0203_sp.jpg) no-repeat center bottom;
	background-size: cover;
}
header .hdMenu .gNav li .sub ul li.nav0204 a {
	background: #00285f url(../img/bg_gNav0204_sp.jpg) no-repeat center bottom;
	background-size: cover;
}
header .hdMenu .gNav li .sub ul li.nav0205 a {
	background: #00285f url(../img/bg_gNav0205_sp.jpg) no-repeat center bottom;
	background-size: cover;
}
header .hdMenu .gNav li .sub ul li.nav0206 a {
	background: #00285f url(../img/bg_gNav0206_sp.jpg) no-repeat center bottom;
	background-size: cover;
}
header .hdMenu .gNav li .sub ul li.nav0207 a {
	background: #00285f url(../img/bg_gNav0207_sp.jpg) no-repeat center bottom;
	background-size: cover;
}
	header .hdMenu .gNav li .sub ul li.nav0208 a {
	background: #00285f url(../img/bg_gNav0208_sp.jpg) no-repeat center bottom;
	background-size: cover;
}
header .hdMenu .gNav li .sub ul li a span {
	top: auto; /* ie */
	top: initial;
	bottom: 0;
	padding: 3px 0;
	text-align: center;
}
header .hdMenu .gNav li .sub ul li.nav0203 a span ,
header .hdMenu .gNav li .sub ul li.nav0204 a span ,
header .hdMenu .gNav li .sub ul li.nav0205 a span ,
header .hdMenu .gNav li .sub ul li.nav0206 a span ,
header .hdMenu .gNav li .sub ul li.nav0207 a span ,
header .hdMenu .gNav li .sub ul li.nav0208 a span {
	display: none;
}
header .hdMenu .langMenu {
	position: static;
	top: 0;
	right: 0;
	margin: 0 4.69%;
	padding: 15px 0;
}
header .hdMenu .langMenu > li {
	width: auto;
	border: 1px solid #fff;
	border-radius: 5px;
	font-size: 14px;
}
header .hdMenu .langMenu > li a {
	display: block;
	padding: 13px 5.17% 13px 6.9%;
	color: #fff;
}
header .hdMenu .langMenu > li a span {
	padding: 1px 0 0;
	background: url(../img/ico_arw_langMenu03.png) no-repeat right center;
	background-size: contain;
}
header .hdMenu .langMenu > li ul li {
	border-top: 1px solid #fff;
}
}

/* --------------------------------------------------------------------------------------
 フッター
--------------------------------------------------------------------------------------- */

footer {
	padding: 54px 0 45px;
	background: #eaeaea;
}
footer .inner {
	position: relative;
}
footer .ftMenu {
	position: absolute;
	bottom: 0;
	left: 290px;
	line-height: 1.8;
	font-size: 83.3%;
	color: #636363;
	letter-spacing: -.5em;
}
footer .ftMenu li {
	display: inline-block;
	letter-spacing: 0;
}
footer .ftMenu li:before {
	margin: 0 .5em;
	content: "|";
}
footer .ftMenu li:first-child:before {
	content: "";
}
footer .ftMenu li a {
	color: #636363;
}
footer .ftBox {
	margin: 0 .83%;
	padding: 0 0 30px;
}
footer .ftBox .ftLeft {
	float: left;
}
footer .ftBox .address {
	margin: 18px 0 0;
	line-height: 1.6;
	font-size: 83.3%;
	color: #636363;
}
footer .ftBox .ftRight {
	float: right;
}
footer .ftBox .ftNav {
	line-height: 2.18;
	font-size: 91.7%;
}
footer .ftBox .ftNav > ul {
	float: left;
	margin: 0 0 0 54px;
}
footer .ftBox .ftNav > ul:first-child {
	margin: 0;
}
footer .ftBox .ftNav > ul:last-child {
	margin: 0 0 0 102px;
}
footer .ftBox .ftNav > ul > li {
	margin: 0 0 16px;
}
footer .ftBox .ftNav ul li a {
	color: #757575;
}
footer .ftBox .ftNav > ul > li > a {
	font-weight: bold;
	color: #434343;
}
footer .copy {
	padding: 0 10px;
	color: #636363;
}

@media screen and (max-width: 1230px) {
footer .ftBox .ftNav > ul {
	margin: 0 0 0 21px;
}
footer .ftBox .ftNav > ul:first-child {
	margin: 0;
}
footer .ftBox .ftNav > ul:last-child {
	margin: 0 0 0 45px;
}
}

@media screen and (max-width: 980px) {
footer {
	padding: 53px 0 45px;
}
footer .ftMenu {
	position: static;
	left: 0;
	text-align: center;
	line-height: 1.5;
	font-size: 116.7%;
}
footer .ftMenu li {
	padding: 0 1em;
	border-left: 1px solid #999;
}
footer .ftMenu li:last-child {
	border-right: 1px solid #999;
}
footer .ftMenu li:before {
	margin: 0;
	content: "";
}
footer .ftBox {
	margin: 0;
	padding: 32px 0 40px;
	text-align: center;
}
footer .ftBox .ftLeft {
	float: none;
}
footer .ftBox .address {
	margin: 14px 0 0;
	font-size: 116.7%;
	color: #636363;
}
footer .ftBox .ftRight {
	display: none;
}
footer .copy {
	margin: 0 2.08%;
	padding: 33px 0 0;
	border-top: 1px solid #999;
	text-align: center;
	color: #636363;
}
}

@media screen and (max-width: 640px) {
footer {
	padding: 0 0 18px;
}
footer .ftMenu {
	border-top: 1px solid #999;
	font-size: 83.3%;
}
footer .ftMenu li {
	width: 50%;
	box-sizing: border-box;
	padding: 0;
	border-bottom: 1px solid #999;
	vertical-align: top;
}
footer .ftMenu li:nth-child(2n+1) {
	border-left: none;
}
footer .ftMenu li:last-child {
	border-right: none;
}
footer .ftMenu li a {
	display: block;
	padding: 6px 0;
	text-decoration: none;
}
footer .ftBox {
	padding: 28px 0;
}
footer .ftBox .address {
	margin: 6px 0 0;
	font-size: 75%;
}
footer .copy {
	margin: 0 4.69%;
	padding: 18px 0 0;
	font-size: 91.7%;
}
}

/* --------------------------------------------------------------------------------------
 ぱんくず
--------------------------------------------------------------------------------------- */

#ctArea .breadcrumb {
	margin: 0 10px;
	padding: 22px 0 6px;
}
#ctArea .breadcrumb ul {
	line-height: 1.6;
	font-size: 116.7%;
	letter-spacing: -.5em;
}
#ctArea .breadcrumb ul li {
	display: inline-block;
	margin: 0 12px 0 0;
	padding: 0 16px 0 0;
	background: url(../img/ico_arw02.png) no-repeat right center;
	letter-spacing: 0;
}
#ctArea .breadcrumb ul li:last-child {
	margin: 0;
	padding: 0;
	background: none;
}
#ctArea .breadcrumb ul li a{
	color: #234575;
}

@media screen and (max-width: 640px) {
#ctArea .breadcrumb {
	display: none;
}
}

/* --------------------------------------------------------------------------------------
 ページ下部
--------------------------------------------------------------------------------------- */

#ctArea .ctBottom {
	border-top: 1px solid #e5e5e5;
}

@media screen and (max-width: 640px) {
#ctArea .ctBottom {
	border-top: none;
}
}

/* news */

#ctArea .news {
	padding: 72px 0 64px;
}
#ctArea .news h2 {
	text-align: center;
	font-size: 183.3%;
	font-weight: bold;
	color: #00285f;
}
#ctArea .news h2 span {
	display: block;
	font-size: 63.6%;
	font-weight: normal;
	font-style: italic;
	color: #6f89ac;
}
#ctArea .news .newsList {
	width: 820px;
	margin: 52px auto 0;
}
.newsList ul {
	line-height: 1.87;
	font-size: 116.7%;
}
.newsList ul li {
	margin: 14px 0 0 1.95%;
}
.newsList ul li span {
	float: left;
	margin: 0 20px 0 0;
	color: #414141;
}
.newsList ul li span.deta {
	width: 70px;
	color: #7e7e7e;
}
.newsList ul li span.label {
	width: 100px;
	text-align: center;
	color: #fff;
}
.newsList ul li span.txt {
	float: none;
	display: block;
	margin: 0 0 0 210px;
}
.newsList ul li span.txt a {
	color: #414141;
	text-decoration: underline;
}
.newsList ul li span.txt a:hover {
	text-decoration: none;
}
.newsList ul li br {
	display: none;
}
.newsList ul li span.txt br {
	display: inline; /* ie */
	display: initial;
}
.newsList ul li span.label01 {
	background: #9cc;
}
.newsList ul li span.label02 {
	background: #9c9;
}
.newsList ul li span.label03 {
	background: #b3b3b3;
}
.newsList ul li span.label04 {
	background: #3b649c;
}
.newsList ul li span.label05 {
	background: #234575;
}
.newsList ul li span.label06 {
	background: #dec076;
}
.newsList .link {
	margin: 48px 0 0;
	text-align: right;
}
.newsList .link span {
	padding: 0 .5em 0 0;
	font-size: 80%;
	color: #a3a3a3;
}
.newsList .link a {
	color: #414141;
}

@media screen and (max-width: 980px) {
#ctArea .news .newsList {
	width: auto;
	margin: 52px 7.29% 0;
}
}

@media screen and (max-width: 640px) {
#ctArea .news {
	padding: 30px 0 52px;
}
#ctArea .news h2 {
	font-size: 141.7%;
}
#ctArea .news h2 span {
	line-height: 1.67;
	font-size: 54.5%;
}
#ctArea .news .newsList {
	margin: 30px 4.69% 0;
}
.newsList ul {
	line-height: 1.5;
	font-size: 100%;
}
.newsList ul li {
	margin: 14px 0 0 1.95%;
}
.newsList ul li span {
	margin: 0 6px 0 0;
}
.newsList ul li span.deta {
	width: auto;
}
.newsList ul li span.label {
	width: 6em;
}
.newsList ul li span.txt {
	clear: both;
	margin: 6px 0 0;
}
.newsList .link {
	margin: 20px 0 0;
	font-size: 100%;
}
.newsList .link span {
	font-size: 100%;
}
}

/* pickup */

#ctArea .pickup {
	position: relative;
	padding: 50px 0 68px;
}
#ctArea .pickup h2 {
	text-align: center;
	font-size: 183.3%;
	font-weight: bold;
	color: #00285f;
}
#ctArea .pickup h2 span {
	display: block;
	font-size: 63.6%;
	font-weight: normal;
	font-style: italic;
	color: #6f89ac;
}
#ctArea .pickup .pickupBnr {
	margin: 36px 0 0;
}
/*#ctArea .pickup .pickupBnr ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}
#ctArea .pickup .pickupBnr ul li {
	width: 23.9%;
	margin: 0 0.75% 1em 0.75%;
}
#ctArea .pickup .pickupBnr .bx-wrapper ul li {
	margin: 0 auto;
}
#ctArea .pickup .pickupBnr .bx-wrapper {
	position: relative;
}
#ctArea .pickup .pickupBnr .bx-controls-direction a {
	position: absolute;
	top: 0;
	width: 25.38%;
	height: 100%;
	overflow: hidden;
	text-indent: -9999px;
}
#ctArea .pickup .pickupBnr .bx-controls-direction .bx-prev {
	left: -25.38%;
	background: url(../img/ico_arw_pickupBnr_prev.png) no-repeat center center;
	background-size: 40%;
}
#ctArea .pickup .pickupBnr .bx-controls-direction .bx-next {
	right: -25.38%;
	background: url(../img/ico_arw_pickupBnr_next.png) no-repeat center center;
	background-size: 40%;
}*/

@media screen and (max-width: 980px) {
/*#ctArea .pickup {
	padding: 50px 0;
}
#ctArea .pickup h2 {
	display: none;
}
#ctArea .pickup .pickupBnr {
	margin: 0 2.55%;
}*/
#ctArea .pickup .pickupBnr ul li {
	width: 23.91%;
	margin: 0 0.545%;
}
}

@media screen and (max-width: 640px) {
/*#ctArea .pickup {
	margin: 76px 0 0;
	padding: 25px 0;
	border-top: 1px solid #e5e5e5;
}
#ctArea .pickup .pickupBnr {
	margin: 0 19.22%;
}*/
#ctArea .pickup .pickupBnr ul{
	display:block;
	flex-wrap:inherit;
	justify-content:flex-start;
}
#ctArea .pickup .pickupBnr ul li {
	width: 100%;
	margin: 0;
}
#ctArea .pickup .pickupBnr ul li a {
	display: block;
	padding: 38.333% 0 0;
}
#ctArea .pickup .pickupBnr ul li.bnr01 a {
	background: url(../img/bnr_pickup01_sp.png) no-repeat center center;
	background-size: contain;
}
#ctArea .pickup .pickupBnr ul li.bnr02 a {
	background: url(../img/bnr_pickup02_sp.png) no-repeat center center;
	background-size: contain;
}
#ctArea .pickup .pickupBnr ul li.bnr03 a {
	background: url(../img/bnr_pickup03_sp.png) no-repeat center center;
	background-size: contain;
}
#ctArea .pickup .pickupBnr ul li.bnr04 a {
	background: url(../img/bnr_pickup04_sp.png) no-repeat center center;
	background-size: contain;
}
#ctArea .pickup .pickupBnr ul li.bnr05 a {
	background: url(../img/bnr_pickup05_sp.png) no-repeat center center;
	background-size: contain;
}
#ctArea .pickup .pickupBnr ul li.bnr06 a {
	background: url(../img/bnr_pickup06_sp.png) no-repeat center center;
	background-size: contain;
}
#ctArea .pickup .pickupBnr ul li img {
	display: none;
}
}

/* pageTop */

.pageTop {
	position: fixed;
	right: 30px;
	bottom: 25px;
	padding: 0 0 15px;
	text-align: right;
	font-size: 10px;
	opacity: 0;
	z-index: 1;
}
.pageTop a {
	display: inline-block;
	padding: 25px 0 0;
	background: url(../img/ico_pageTop01.png) no-repeat center top;
	background-size: 30px;
	text-align: center;
	color: #585858;
	text-decoration: none;
}

@media screen and (max-width: 640px) {
.pageTop {
	right: 4.22%;
}
.pageTop.absolute {
	position: absolute;
	bottom: auto; /* ie */
	bottom: initial;
	top: -50px;
}
}

/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999;}
#cboxOverlay {overflow:hidden;}
#cboxWrapper {max-width:none;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:#000;}
#colorbox{outline:0;}
    #cboxContent{background:#fff;}
        .cboxIframe{background:#fff;}
        /* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
        #cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }
        
        /* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
        #cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}

#cboxPrevious{
	position:absolute;
	top:50%;
	left:-40px;
	width:39px;
	height:54px;
	background: url(../img/btn_modal_prev01.png) no-repeat center center;
	background-size: 19px;
	margin:-27px 0 0;
	text-indent:-9999px;
}

#cboxNext{
	position:absolute;
	top:50%;
	right:-40px;
	width:39px;
	height:54px;
	background: url(../img/btn_modal_next01.png) no-repeat center center;
	background-size: 19px;
	margin:-27px 0 0;
	text-indent:-9999px;
}

#cboxClose{
	position:absolute;
	top:0;
	right:0;
	width:40px;
	height:40px;
	background: url(../img/btn_modal_close01.png) no-repeat center center;
	text-indent:-9999px;
}

@media screen and (max-width: 640px) {
#cboxPrevious{
	left:-20px;
	width:60px;
	height:60px;
	background: url(../img/btn_modal_prev01_sp.png) no-repeat center center;
	background-size: contain;
	margin:-20px 0 0;
}

#cboxNext{
	right:-20px;
	width:60px;
	height:60px;
	background: url(../img/btn_modal_next01_sp.png) no-repeat center center;
	background-size: contain;
	margin:-20px 0 0;
}
}

@media screen and (max-width: 480px) {
#cboxPrevious{
	left:-10px;
	width:30px;
	height:30px;
	margin:-15px 0 0;
}

#cboxNext{
	right:-10px;
	width:30px;
	height:30px;
	margin:-15px 0 0;
}
#cboxClose{
	width:20px;
	height:20px;
	background: url(../img/btn_modal_close01.png) no-repeat center center;
	background-size: contain;
}
}

/*
  The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
  when an alpha filter (opacity change) is set on the element or ancestor element.  This style is not applied to or needed in IE9.
  See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}
