@charset "utf-8";


/* 全体構造
------------------------------------------------------------------- */
html {
	font-size: 62.5%;
  font-family: Helvetica Neue, Helvetica, Hiragino Sans, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
}

body {
	color: #000;
	background: #FFFFFF;
	min-width: 1000px;
}

.container {
	width:1000px;
	margin:0 auto;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.8;
}

.container_s {
	width:800px;
	margin:0 auto;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.8;
}

.container_ss {
	width:600px;
	margin:0 auto;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.8;
}

a {
	color: #003ec9;
	text-decoration: underline;
}

a:hover {
	color: #0D19ED;
}

img {
	width:100%;
	height:auto;
}


/* parts
------------------------------------------------------------------- */

.mgb10 {
	margin-bottom:10px;
}

.mgb20 {
	margin-bottom:20px;
}

.mgb40 {
	margin-bottom:40px;
}

.mgb70 {
	margin-bottom:70px;
}

.fs18 {
	font-size: 18px;
	font-size: 1.8rem;
}

.center {
	text-align:center;
}

.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}

.page_title {
	background-color:#073190;
}

.page_title .container {
	background: url(../images/common/page_title_bg.jpg) no-repeat left top;
	padding: 55px 0;
}

.page_title h1 {
	color:#FFF;
	font-size:28px;
	font-size:2.8rem;
	line-height:1;
	text-align:center;
}

.page_subtitle {
	font-size: 24px;
	font-size: 2.4rem;
	line-height:1.5;
	font-weight:bold;
	color: #07308F;
	text-align: center;
	margin-bottom: 70px;
}

.page_subtitle span {
	font-size: 14px;
	font-size: 1.4rem;
	display:block;
}

.page_boxtitle {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	color:#FFF;
	line-height: 1;
	background: #073190;
	margin: 70px 0 0;
	padding:10px;
}

.page_table {
	width:100%;
}

.page_table th, 
.page_table td {
	border-bottom: 1px solid #aaaaaa;
	padding:20px;
}

.page_table th {
	width:28%;
}

.page_table td {
	width:72%;
}

.list_disc {
	margin-left: 1.5em;
	list-style-type: disc;
}

/* header
------------------------------------------------------------------- */
header {
	height:60px;
}

header h1 {
	width:420px;
	float:left;
	padding-top: 8px;
}

nav {
	font-size: 14px;
	font-size: 1.4rem;
	line-height:60px;
}

nav a {
	color:#000;
	text-decoration:none;
}

nav a:hover {
	color: #0D19ED;
}

nav ul {
	text-align:right;
	overflow:hidden;
}

nav ul li {
	display:inline-block;
	padding-right:40px;
}

nav ul li:last-child {
	padding-right:0px;
}


/* footer
------------------------------------------------------------------- */
footer {
	background: #ffe114;
	padding: 30px 0px;
}

.footer_address {
	font-size: 14px;
	font-size: 1.4rem;
	width:350px;
	float:left;
}

.footer_logo {
	width:154px;
	margin-bottom:10px;
}

.footer_contact {
	font-size: 14px;
	font-size: 1.4rem;
	width:430px;
	float:right;
}

.footer_title {
	line-height: 1;
	color: #073190;
	text-align: center;
	padding: 7px;
	border: 1px solid #073190;
	margin-bottom: 10px;
}

.footer_contact_inner p {
	display:inline-block;
}

.footer_tel {
	font-size: 20px;
	font-size: 2.0rem;
	margin-right:20px;
}

/*home
------------------------------------------------------------------- */

#home {
	background-color:#073190;
	padding-bottom:70px;
}

.home_image {
	min-width:1000px;
}

#home_new {
	background:#FFF;
	width:100%;
	height:450px;
	margin-top: -100px;
	transform:skew(0deg, -3deg);
}

#home_new .container_ss {
	transform:skew(0deg, 3deg);
}

#home_new .new_txt_wrapper {
	position:relative;
}

#home_new .new_txt {
	width: 100%;
	position: absolute;
	z-index: 100;
	top: 100px;
}

#home_new .new_txt p {
	padding-bottom:10px;
	margin-bottom:10px;
	border-bottom: 1px solid #aaaaaa;
}

#home_vision {
	position:relative;
}

#home_vision h1.page_subtitle {
	padding-top:100px;
}

#home_vision .container_s {
	color: #FFF;
	position: absolute;
	left: 0px;
	top: 50px;
	right: 0px;
}

#home_vision .page_subtitle {
	color:#FFF;
}

#home .home_bg1 {
	position: absolute;
	top: 0px;
	left: 0;
	max-width: 1800px;
	height: auto;
}


#home .home_bg2 {
	position: absolute;
	top: 0px;
	right:0;
	max-width:1800px;
	height:auto;
}

#home_safety .container {
	margin-top: 500px;
	background: #FFF;
	padding: 70px 100px;
}

.safetymark {
	width:108px;
	margin-right:20px;
	float:left;
}


/*company
------------------------------------------------------------------- */
#company .page_subtitle {
	margin-top: 70px;
}


/*office
------------------------------------------------------------------- */
.office_container {
	margin-bottom: 40px;
	padding-bottom: 40px;
	border-bottom: 1px solid #aaaaaa;
}

.office_detail {
	width: 480px;
	float: left;
}

.office_detail h1 {
	font-weight:bold;
}

.office_address {
	line-height:1.5;
}

.office_ph {
	margin-top:10px;
	width:320px;
}

.office_map {
	margin-left: 500px;
}
