@charset "utf-8";
/* ////////////////////////////////////////////////////////////
	File Name	common.css

	font percent size
	[10px =>  63%]
	[11px =>  69%] [12px =>  75%] [13px =>  82%] [14px =>  88%] [15px =>  94%]
	[16px => 100%] [17px => 107%] [18px => 113%] [19px => 119%] [20px => 125%]
	[21px => 132%] [22px => 138%] [23px => 144%] [24px => 150%] [25px => 157%]
	[26px => 163%]
*/

/*============================================================
	[RESET DEFAULT TAGS]
*/
html,body { background:#FFFFFF; }
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
pre,code,form,fieldset,legend,input,textarea,
p,blockquote,th,td,embed,button { margin:0; padding:0; }
table { border-collapse:collapse; border-spacing:0; }
fieldset,img { border:0; }
li { list-style:none; }
caption,th { text-align:left; }
q:before,q:after { content:''; }
abbr,acronym { border:0; font-variant:normal; }
sup { vertical-align:text-top; }
sub { vertical-align:text-bottom; }
legend { color:#000000; }
area { outline: 0; }

/*============================================================
	[RESET DEFAULT FONT]
*/
body { font-size:100%; color:#000000; }
input,button,textarea { font-weight:inherit; font-size:99%; }
table { font-size:inherit; font-size:100%; }
h1,h2,h3,h4,h5,h6 { font-size:100%; }
address,caption,cite,code,dfn,em,strong,th,var { font-style:normal; }

/*============================================================
	COMMON
*/
html, body {
	width: 100%; height: 100%;
	background: #ffffff;
}
html {
	overflow-y: scroll;
}
body {
	/*overflow-y: scroll;*/
	font-size: 100%;
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	color: #333333;
	-webkit-text-size-adjust: 100%;
}
img {
	vertical-align: top;
}

/*============================================================
	A
*/
a {
	text-decoration: none;
	outline: 0;
	color: #4eb1ca;
}
a:hover{
	text-decoration: underline;
}

/*============================================================
	CONTAINER
*/
#container {
	position: relative;
	min-width: 1020px;
	width: 100%;
	min-height: 100%;
	height: auto !important;
	height: 100%;
	background: #233c63 url(../img/common/bg.png) 0 0 repeat-x;
}
.body {
	position: relative;
	margin: 0 auto;
	padding-bottom: 44px;
	width: 978px;
}
/* heading */
.body .heading {
	margin: 55px 0 15px 0;
}
.body .heading img {
	position: relative;
	left: -5px;
	height: 60px;
}
/* contents */
.body .contents {
	min-height: 330px;
	margin-bottom: 76px;
	background: #ffffff;
}
.body .contents .contents-in {
	margin: 0 auto;
	padding: 30px 0;
	width: 918px;
}
.body .contents .wrap:after {
	content: "."; display: block; clear: both; visibility: hidden; height: 0;
}
.body .contents .wrap {
	width: 100%;
	zoom: 1;
}
/* contents-index */
.body .heading-index {
	margin-top: 85px;
}
.body .contents-index {
	min-height: 300px;
	background: none;
}
.body .contents-index .menu:after {
	content: "."; display: block; clear: both; visibility: hidden; height: 0;
}
.body .contents-index .menu {
	width: 100%;
	zoom: 1;
}
.body .contents-index .menu li {
	float: left;
	margin-right: 12px;
	margin-bottom: 12px;
	width: 235px; height: 235px;
	background: #ffffff;
}
.body .contents-index .menu li a:hover img {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
.body .contents-index .menu li.last {
	margin-right: 0;
}

/*============================================================
	BG
*/
#bg {
	overflow: hidden;
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
}
#bg img {
	position: absolute;
	top: 0; left: 0;
}
#bg span {
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 120px;
	background: transparent url(../img/common/bg_shadow.png) 0 0 repeat-x;
}

/*============================================================
	HEADER
*/
.header {
	position: relative;
	width: 100%; height: 122px;
	z-index: 50;
}
.header h1 {
	position: absolute;
	top: 15px; left: 7px;
}
.header p {
	position: absolute;
	top: 15px; right: 10px;
}
.header ul.btn {
	position: absolute;
	top: 14px; left: 490px;
	width: 486px;
}
.header ul.btn li {
	display: inline;
	float: left;
	padding-right: 1px;
}

/*============================================================
	NAV
*/
.header ul.nav {
	position: absolute;
	top: 70px; left: 0;
	width: 100%; height: 52px;
}
.header ul.nav li {
	float: left;
	width: 163px;
}
.header ul.nav li.nav06 {
	width: 162px;
}
.header ul.nav li a,
.header ul.nav li span {
	display: block;
	overflow: hidden;
	padding-top: 52px;
	width: 100%; height: 0;
	background: transparent url(../img/common/nav.png?u=20151117) 0 0 no-repeat;
}
.header ul.nav li.nav02 a,
.header ul.nav li.nav02 span {
	background-position: -163px 0;
}
.header ul.nav li.nav03 a,
.header ul.nav li.nav03 span {
	background-position: -326px 0;
}
.header ul.nav li.nav04 a,
.header ul.nav li.nav04 span {
	background-position: -489px 0;
}
.header ul.nav li.nav05 a,
.header ul.nav li.nav05 span {
	background-position: -652px 0;
}
.header ul.nav li.nav06 a,
.header ul.nav li.nav06 span {
	background-position: -815px 0;
}
.header ul.nav li.nav01 span.current,
.header ul.nav li.nav01 span.hover {
	background-position: 0 -60px;
}
.header ul.nav li.nav02 span.current,
.header ul.nav li.nav02 span.hover {
	background-position: -163px -60px;
}
.header ul.nav li.nav03 span.current,
.header ul.nav li.nav03 span.hover {
	background-position: -326px -60px;
}
.header ul.nav li.nav04 span.current,
.header ul.nav li.nav04 span.hover {
	background-position: -489px -60px;
}
.header ul.nav li.nav05 span.current,
.header ul.nav li.nav05 span.hover {
	background-position: -652px -60px;
}
.header ul.nav li.nav06 span.current,
.header ul.nav li.nav06 span.hover {
	background-position: -815px -60px;
}

.header ul.subnav {
	position: absolute;
	top: 122px; left: 0;
	z-index: 5;
	width: 210px;
	display: none;
}
.header ul.subnav li a,
.header ul.subnav li span {
	display: block;
	overflow: hidden;
	padding-top: 44px;
	width: 100%; height: 0;
	background-color: transparent;
	background-repeat: no-repeat;
}
.header ul.subnav li a.current {
	cursor: default;
}

/* SUBNAV01 */
.header #nav01 {
	left: 0;
}
.header #nav01 li a,
.header #nav01 li span {
	background-image: url(../img/common/nav01.png?u=20151117);
}

/* SUBNAV02 */
.header #nav02 {
	left: 163px;
}
.header #nav02 li a,
.header #nav02 li span {
	background-image: url(../img/common/nav02.png?u=20151117);
}

/* SUBNAV03 */
.header #nav03 {
	left: 326px;
	width: 260px;
}
.header #nav03 li a,
.header #nav03 li span {
	background-image: url(../img/common/nav03.png?u=20151117);
}

/* SUBNAV04 */
.header #nav04 {
	left: 489px;
}
.header #nav04 li a,
.header #nav04 li span {
	background-image: url(../img/common/nav04.png?u=20151117);
}

/* SUBNAV05 */
.header #nav05 {
	left: 652px;
}
.header #nav05 li a,
.header #nav05 li span {
	background-image: url(../img/common/nav05.png?u=20151117);
}

/* SUBNAV06 */
.header #nav06 {
	left: 767px;
}
.header #nav06 li a,
.header #nav06 li span {
	background-image: url(../img/common/nav06.png?u=20151117);
}

/* SUBNAV POSITIONS  */
.header ul.subnav li.nav01 a,
.header ul.subnav li.nav01 span {
	background-position: 0 0;
}
.header ul.subnav li.nav02 a,
.header ul.subnav li.nav02 span {
	background-position: 0 -44px;
}
.header ul.subnav li.nav03 a,
.header ul.subnav li.nav03 span {
	background-position: 0 -88px;
}
.header ul.subnav li.nav04 a,
.header ul.subnav li.nav04 span {
	background-position: 0 -132px;
}
.header ul.subnav li.nav05 a,
.header ul.subnav li.nav05 span {
	background-position: 0 -176px;
}
.header ul.subnav li.nav06 a,
.header ul.subnav li.nav06 span {
	background-position: 0 -220px;
}
.header ul.subnav li.nav07 a,
.header ul.subnav li.nav07 span {
	background-position: 0 -264px;
}
.header ul.subnav li.nav08 a,
.header ul.subnav li.nav08 span {
	background-position: 0 -308px;
}

.header ul.subnav li.nav01 a:hover,
.header ul.subnav li.nav01 a.current {
	background-position: -220px 0;
}
.header ul.subnav li.nav02 a:hover,
.header ul.subnav li.nav02 a.current {
	background-position: -220px -44px;
}
.header ul.subnav li.nav03 a:hover,
.header ul.subnav li.nav03 a.current {
	background-position: -220px -88px;
}
.header ul.subnav li.nav04 a:hover,
.header ul.subnav li.nav04 a.current {
	background-position: -220px -132px;
}
.header ul.subnav li.nav05 a:hover,
.header ul.subnav li.nav05 a.current {
	background-position: -220px -176px;
}
.header ul.subnav li.nav06 a:hover,
.header ul.subnav li.nav06 a.current {
	background-position: -220px -220px;
}
.header ul.subnav li.nav07 a:hover,
.header ul.subnav li.nav07 a.current {
	background-position: -220px -264px;
}
.header ul.subnav li.nav08 a:hover,
.header ul.subnav li.nav08 a.current {
	background-position: -220px -308px;
}

/* SUBNAV03 */
.header ul#nav03 li.nav01 a:hover,
.header ul#nav03 li.nav01 a.current {
	background-position: -280px 0;
}
.header ul#nav03 li.nav02 a:hover,
.header ul#nav03 li.nav02 a.current {
	background-position: -280px -44px;
}
.header ul#nav03 li.nav03 a:hover,
.header ul#nav03 li.nav03 a.current {
	background-position: -280px -88px;
}
.header ul#nav03 li.nav04 a:hover,
.header ul#nav03 li.nav04 a.current {
	background-position: -280px -132px;
}
.header ul#nav03 li.nav05 a:hover,
.header ul#nav03 li.nav05 a.current {
	background-position: -280px -176px;
}
.header ul#nav03 li.nav06 a:hover,
.header ul#nav03 li.nav06 a.current {
	background-position: -280px -220px;
}
.header ul#nav03 li.nav07 a:hover,
.header ul#nav03 li.nav07 a.current {
	background-position: -280px -264px;
}
.header ul#nav03 li.nav08 a:hover,
.header ul#nav03 li.nav08 a.current {
	background-position: -280px -308px;
}

/*============================================================
	FOOTER
*/
.footer {
	position: absolute;
	left: 0; bottom: 0;
	z-index: 1;
	width: 100%; height: 44px;
	border-top: 1px solid #3370ae;
	background: #003a70;
	color: #ffffff;
}
.footer div {
	position: relative;
	margin: 0 auto;
	width: 980px;
}
.footer .copyright {
	position: absolute;
	top: 9px; left: 0;
	overflow: hidden;
	padding-top: 14px;
	width: 314px; height: 0;
	background: transparent url(../img/common/copyright.png?u=20151118) 0 0 no-repeat;
}

/*============================================================
	PAGETOP
*/
#pagetop {
	width: 100%; height: 54px;
}
#pagetop a {
	float: right;
	display: block;
	overflow: hidden;
	padding-top: 40px;
	width: 40px; height: 0;
	background: transparent url(../img/common/pagetop.png) 0 0 no-repeat;
}
#pagetop a:hover {
	background-position: 0 0;
}

/*============================================================
	OVERLAY
*/
#overlay {
	display: none;
	position: absolute;
	top: 0; left: 0;
	z-index: 998;
	width: 100%; height: 100%;
	background: transparent url(../img/common/overlay.png) 0 0 repeat;
}

/*============================================================
	モーダル
*/
#modal {
	display: none;
	position: absolute;
	top: 0; left: 50%;
	z-index: 999;
	margin-left: -410px;
	width: 820px;
}
#modal .in {
	position: absolute;
	top: 40px; left: 50%;
	overflow: hidden;
	margin-left: -368px;
	width: 736px;
	background: #ffffff;
}
#modal .in a.next {
	position: absolute;
	top: 50%; right: 18px;
	margin-top: -60px;
}
#modal .in a.prev {
	position: absolute;
	top: 50%; left: 18px;
	margin-top: -60px;
}
#modal .in a.next,
#modal .in a.prev {
	display: block;
	overflow: hidden;
	padding-top: 70px;
	width: 42px; height: 0;
	background-color: transparent;
	background-image: url(../img/company/gallery_ctr.png);
	background-repeat: no-repeat;
}
#modal .in a.next {
	background-position: -42px 0;
}
#modal .in a.prev {
	background-position: 0 0;
}
#modal .in a.next:hover {
	background-position: -42px -70px;
}
#modal .in a.prev:hover {
	background-position: 0 -70px;
}
#modal .in .box {
	position: absolute;
	top: 50%; left: 0;
	width: 100%;
}
#modal .in .box div {
	margin: 0 auto;
	width: 584px;
	text-align: center;
}
#modal .in .box p {
	margin: 0 auto;
	padding: 15px 0 0 0;
	width: 584px;
	font-size: 13px;
	line-height: 26px;
}
#modal .close {
	display: block;
	overflow: hidden;
	position: absolute;
	top: 0; right: 0;
	padding-top: 38px;
	width: 38px; height: 0;
	background: transparent url(../img/common/btn_close.png) 0 0 no-repeat;
}

/*============================================================
	タブ共通
*/
.contents ul.tab {
	margin: 0 auto;
	width: 952px; height: 64px;
}
.contents ul.tab li {
	float: left;
}
.contents ul.tab li p {
	height: 53px;
}
.contents ul.tab li p.current {
	background-color: transparent;
	background-image: url(../img/common/arrow_tab.png);
	background-repeat: no-repeat;
}
.contents ul.tab-top li p {
	padding-bottom: 11px;
}
.contents ul.tab-top li p.current {
	background-position: 0 100%;
}
.contents ul.tab-bottom li p {
	padding-top: 11px;
}
.contents ul.tab-bottom li p.current {
	background-position: 0 0;
}
.contents ul.tab li a {
	display: block;
	overflow: hidden;
	padding-top: 53px;
	width: 100%; height: 0;
}
.contents ul.tab li p.current a {
	cursor: default;
}

/*============================================================
	POSITION
*/
.right { text-align: right; }
.center { text-align: center; }

/*============================================================
	COLOR
*/
.gray { color: #666666; }

/*============================================================
	MARGIN
*/
.mt10 { margin-top: 10px; }
.mt15 { margin-top: 15px; }
.mt20 { margin-top: 20px; }
.mt25 { margin-top: 25px; }
.mt30 { margin-top: 30px; }
.mt35 { margin-top: 35px; }
.mt40 { margin-top: 40px; }
.mt50 { margin-top: 50px; }
.mt60 { margin-top: 60px; }

/*============================================================
	FONT
*/
.fs12 { font-size: 75%; line-height: 1.9em; }
.fs13 { font-size: 82%; line-height: 1.9em; }
.fs14 { font-size: 88%; line-height: 1.5em; }
.fs15 { font-size: 94%; line-height: 1.3em; }
.fs16 { font-size: 100%; line-height: 1.2em; }
