/*  RESET   */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ul {
  list-style: none;
}
ol {
	margin:0;
	padding:0 0 0 20px;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}
/*
 Base format

 */
 
 
html {
	font-size: 62.5%;
}
body {
  font-size: 1.4rem;
  color: #333;
  font-family: メイリオ, Meiryo,"ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 游ゴシック体, "Yu Gothic", YuGothic,  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  height: 100%;
  line-height: 1.6;
  width: 100%;
}

p {
  margin-top: 0;
  margin-bottom:15px;
}

img {
  height: auto;
  max-width: 100%;
  vertical-align:bottom;
}

.oldie img {
  width: auto;
}

.cf:before,
.cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

figure {
  margin: 0;
}


li {
  margin-bottom: .5em;
}

input[type="submit"] {
	-webkit-appearance: none;
	border-radius: 0;
}

/* table */

table {
  width: 100%;
  border-collapse:collapse;
}

table th {
  font-weight:normal;
}

table th, table td {
	border:1px #CCCCCC solid;
	padding:13px;
	text-align: left;
}

.table-type01 th {
	background:#F4F4F4;
	color:#0072B7;
	vertical-align:top;
}
.table-type02 th {
	background:#0054A7;
	color:#FFF;
	text-align:center;
}
.table-type02 td {
	font-size:1.2rem;
}
 
@media screen and (min-width: 769px) {
	.table-type01 th {
		min-width:180px;
	}
}

@media screen and (max-width: 768px) {
	.table-type01 th, .table-type01 td {
		display:block;
	}
	.table-scroll {
		position: relative;
		overflow-x: auto;
		white-space: nowrap; 
	}
}

/* margin */

.m-0 { margin: 0;}
.mt-0 { margin-top: 0;}
.mb-0 {  margin-bottom: 0px;}
.mb-10 { margin-bottom:10px;}
.mb-20 { margin-bottom:20px;}
.mb-30 { margin-bottom:30px;}
.mb-40 { margin-bottom:40px;}
.mb-50 { margin-bottom:50px;}
.mb-60 { margin-bottom:60px;}
.mb-70 { margin-bottom:70px;}
.mb-80 { margin-bottom:80px;}
.mb-90 { margin-bottom:90px;}
.mb-100 { margin-bottom:100px;}

@media screen and (min-width: 769px) {
	.col-1 { width: 8.33333%; }
	.col-2 { width: 16.66667%; }
	.col-3 { width: 25%; }
	.col-4 { width: 33.33333%; }
	.col-5 { width: 41.66667%; }
	.col-6 { width: 48%; }
	.col-7 { width: 58.33333%; }
	.col-8 { width: 66.66667%; }
	.col-9 { width: 75%; }
	.col-10 { width: 83.33333%; }
	.col-11 { width: 91.66667%; }
	.col-12 { width: 100%; }
}

@media screen and (max-width: 768px) {
  .col-md-1 { width: 8.33333%; }
  .col-md-2 { width: 16.66667%; }
  .col-md-3 { width: 25%; }
  .col-md-4 { width: 33.33333%; }
  .col-md-5 { width: 41.66667%; }
  .col-md-6 {  width: 50%;}
  .col-md-7 {  width: 58.33333%;  }
  .col-md-8 { width: 66.66667%; }
  .col-md-9 { width: 75%; }
  .col-md-10 {  width: 83.33333%; }
  .col-md-11 {  width: 90%; }
  .col-md-12 {  width: 100%; } 
}

/* status */

section .inner {
	max-width:1000px;
	margin:0 auto;
}

.overflow { overflow: hidden; }

.content {
	max-width:1000px;
	margin:0 auto;
	overflow:hidden;
}
.content#top {
	max-width:100%;
}

.right { text-align: right; }
.center { text-align: center; }

.txt_s { font-size:1.2rem; }
.bold { font-weight:bold; }
.red { color:#E13F3F; }

.pan {
	background:url(../img/common/bg_dot.jpg);
	padding:12px 0;
	text-align:right;
	font-size:1.2rem;
	margin-bottom:60px;
}
.pan ul {
	max-width:1000px;
	margin:0 auto;
}
.pan ul li {
	display:inline-block;
	margin:0;
}
.pan ul li a {
	color:#0053A6;
	text-decoration:none;
}
.pan ul li a:after {
	content:"\f105";
	font-family:FontAwesome;
	margin:0 5px;
	color:#222;
}
@media screen and (min-width: 769px) {
	.fl-l { float: left; }
	.fl-r { float: right; }
	
	.content .main {
		width:70%;
		float:left;
	}
	.content .side {
		max-width:24%;
		float:right;
	}
	.pc-none {
		display:none;
	}
}
@media screen and (max-width: 768px) {
	section .inner {
		width:90%;
	}
	.fl-l {
		margin-bottom:20px;
	}
	.content .main, .content .side {
		width:90%;
		margin:0 auto;
	}
	.content .main {
		margin-bottom:40px;
	}
	.content .side img {
		width:100%;
	}
	.pan {
		padding:12px;
	}
	.sp-none {
		display:none;
	}
}
/* link */

a {
	outline: none;
	color:#0052A5;
}
a:hover {
	text-decoration:none;
}
a.opa:hover {
	opacity:0.8;
}

a.pdf {
	text-decoration:none;
}
a.pdf:after {
	content:url(../img/common/icn_pdf.png);
	margin-left:5px;
}

.btn-type01 {
	color:#0052A5;
	text-decoration:none;
	border:#DDD 1px solid;
	border-radius:3px;
	padding:10px 15px;
	display:inline-block;
}
.btn-type01:hover {
	border-color:#0052A5;
	color:#FFF;
	background:#0052A5;
}
.btn-type02 {
	color:#FFF;
	font-size:1.2rem;
	border-radius:3px;
	background:#0054A7;
	text-decoration:none;
	padding:5px 10px;
}
.btn-type02:hover {
	background:#00468C;
}
.btn-type02:before {
	content:"\f0c9";
	font-family:FontAwesome;
	margin-right:5px;
}

.btn-type02.rss {
	background:#F26D01;
	margin-left:5px;
}
.btn-type02.rss:hover {
	background:#E06601;
}
.btn-type02.rss:before {
	content:"\f09e";
}

.blank-type01:after {
	content:url(../img/common/icn_blank.png);
	margin-left:5px;
}
.blank-type02 {
	text-decoration:none;
}
.blank-type02:after {
	content:"\f08e";
	font-family:FontAwesome;
	margin-left:5px;
	color:#1F1F1F;
}

/* title */
.ttl-type01 {
	font-size:2rem;
	padding-left:20px;
	position:relative;
	font-weight::bold;
	margin-bottom:20px;
}
.ttl-type01 span {
	font-family:Arial, Helvetica, sans-serif;
	font-size:1.1rem;
	vertical-align:middle;
	color:#868686;
	margin-left:12px;
}
.ttl-type01:before, .ttl-type01:after {
	content:"";
	width:6px;
	position:absolute;
	left:0;
}
.ttl-type01:before {
	height:32px;
	background:#0054A7;
	box-shadow:7px 0px 10px -5px #BBB;
	-moz-box-shadow:7px 0px 10px -5px #BBB;
	-webkit-box-shadow:7px 0px 10px -5px #BBB;
}
.ttl-type01:after{
	height:16px;
	background:#01B4ED;
}

.ttl-type02 {
	color:#FFF;
	font-size:1.8rem;
	padding:12px 15px;
	margin-bottom:25px;
	position:relative;
}
.ttl-type02:before, .ttl-type02:after {
	content:"";
	position:absolute;
	top:0;
	right:0;
	height:100%;
}
.ttl-type02:before {
	background:#0073B7;
	border-radius:3px;
	bottom:0;
	left:0;
	z-index:-2;
}
.ttl-type02:after {
	content:"";
	width:70%;
	background: -moz-linear-gradient(45deg,  rgba(0,115,183,0) 0%, rgba(1,161,221,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(45deg,  rgba(0,115,183,0) 0%,rgba(1,161,221,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(45deg,  rgba(0,115,183,0) 0%,rgba(1,161,221,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000073b7', endColorstr='#01a1dd',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
	z-index:-1;
	border-radius:0 3px 3px 0;
}

.ttl-type03 {
	font-size:1.6rem;
	color:#0052A5;
	font-weight:bold;
	border-left:6px #0054A7 solid;
	padding-left:18px;
	margin-bottom:15px;
}

.ttl-type04 {
	font-size:1.4rem;
	color:#0052A5;
	font-weight:bold;
	margin-bottom:15px;
}
.ttl-type04.line {
	border-bottom:#DDD 1px solid;
	padding-bottom:8px;
	position:relative;
}

.ttl-type04.line:before {
	content:"";
	width:40px;
	height:1px;
	background:#0054A7;
	position:absolute;
	left:0;
	bottom:-1px;
}

.ttl-type04.square {
	position:relative;
	padding-left:18px;
}
.ttl-type04.square:before {
	content:"■";
	font-size:1rem;
	height:8px;
	position:absolute;
	left:0;
	top:5px;
}
	
.ttl-min {
	color:#0053A6;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho",serif;
	font-size:2.4rem;
	margin-bottom:10px;
}


/* pagettl */
.pagettl {
	background:url(../img/common/ttl_bg.jpg) no-repeat center center;
	background-size:cover;
}

.ttl_wrap {
	max-width:1060px;
	margin:0 auto;
	overflow:hidden;
}
.pagettl h2 {
	text-align:center;	
	font-size:3.2rem;
	font-weight:bold;
	padding:24px 0;
	background:url(../img/common/ttl_bg.png) no-repeat left center;
}
.pagettl h2 span {
	display:block;
	font-size:1.3rem;
	color:#00B2EB;
}

@media screen and (min-width: 769px) {
	.pagettl h2 {
		min-width:300px;
		padding:24px 18px;
		float:left;
	}
}
@media screen and (max-width: 768px) {
	.pagettl h2 {
		background:url(../img/common/ttl_bg.png) no-repeat center center;
	}
}

/* タブ切り替え */
ul.tab{
	letter-spacing:-.40em;
	margin-bottom:35px;
}
	
.tab li{
	letter-spacing:normal;
	vertical-align:top;	
	text-align:center;
	padding:15px 0;
	color:#0052A5;
	border:#DDD 1px solid;
	border-radius:3px;
	cursor:pointer;
	margin-bottom:10px;
}

.tab li:hover, .tab li.select{
	background:#0054A7;
	border-color:#0054A7;
	color:#FFF;
}
	
.hide{display:none;}

@media screen and (min-width: 769px) {
	ul.tab{
		display:-webkit-box;
		display:-moz-box;
		display:-ms-box;
		display:-webkit-flexbox;
		display:-moz-flexbox;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:-moz-flex;
		display:-ms-flex;
		display:flex;
		-webkit-box-lines:multiple;
		-moz-box-lines:multiple;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
	}
	.tab li{
		width:23.5%;
		display:inline-block;
		vertical-align:middle;
		margin-right:1.5%;
	}
	.tab li:nth-child(4n+4) {
		margin-right:0;
	}
}

/* メニュー */

ul.main_menu {
	letter-spacing:-.40em;
}
ul.main_menu li {
	letter-spacing:normal;
	border:1px solid #DDD;
	border-radius:4px;
	margin-bottom:20px;
}

ul.main_menu li a {
	display:block;
	color:#0052A5;
	text-decoration:none;
}

ul.main_menu li a:hover {
	background:#EDF4FA;
}
ul.main_menu li a:hover img {
	opacity:0.8;
}

ul.main_menu li span {
	padding:12px 12px 12px 30px;
	font-size:1.6rem;
	display:block;
}
ul.main_menu li .ttl-type01 {
	margin:0;
}
ul.main_menu li .ttl-type01:before,
ul.main_menu li .ttl-type01:after {
	left:12px;
}

ul.main_menu li .ttl-type01:before {
	height:30px;
}
ul.main_menu li .ttl-type01:after {
	height:15px;
}
@media screen and (min-width: 769px) {
	ul.main_menu li {
		display:inline-block;
		width:338px;
		margin-right:20px;
	}
	ul.main_menu li:nth-child(2n+2) {
		margin-right:0;
	}
}
@media screen and (max-width: 768px) {
	ul.main_menu li img {
		width:100%;
	}
}

/* box */
.gray_box {
	background:#F4F4F4;
	border:#CCC 1px solid;
	border-radius:6px;
	padding:20px;
}

/* --------------------------------------
 
            header
		
--------------------------------------*/
#header_wrap {
	border-top:#0054A7 3px solid;
}

#header {
	max-width:1000px;
	margin:0 auto;
	padding:15px 0;
	overflow:hidden;
}
#header h1.logo {
	float:left;
}

#header ul.sub_nav {
	float:right;
}
#header ul.sub_nav a {
	color:#1F1F1F;
	text-decoration:none;
	font-size:1.2rem;
}
#header ul.sub_nav a:hover {
	color:#0053A6;
}
#header ul.sub_nav a:before {
	content:"\f105";
	font-family:FontAwesome;
	font-size:1rem;
	color:#FFF;
	background:#1F1F1F;
	padding:0 4px;
	margin-right:5px;
}
#header ul.sub_nav li {
	display:inline-block;
	margin-left:5px;
}

@media screen and (max-width: 768px) {
	#header {
		width:90%;
	}
	#header ul.sub_nav {
		display:none;
	}
	#header h1.logo {
		max-width:80%;
	}
}

/* nav */

ul.nav {
	max-width:1000px;
	width:100%;
	margin:0 auto;
}

ul.nav li {
	text-align:center;
	position:relative;
}

ul.nav li a {
	color:#1F1F1F;
	text-decoration:none;
	padding:15px 0;
	position:relative;
	display:block;
}

ul.nav li a span {
	display:block;
	font-size:0.9rem;
	color:#00B3EC;
}

ul.nav li a:hover, ul.nav li a:hover span {
	color:#0053A6;
}

ul.nav li a:hover:after {
	content:"";
	width:100%;
	height:3px;
	background:#0054A7;
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
}
@media screen and (min-width: 768px) {
	ul.nav {
		display:table;
	}
	ul.nav li {
	display:table-cell;
	}
	ul.nav li:before, ul.nav li:last-child:after{
		content:"";
		width:1px;
		height:10px;
		background:#DDD;
		position:absolute;
		top:0;
		bottom:0;
		margin:auto;
	}
	ul.nav li:before {
		left:0;
	}
		
	ul.nav li:last-child:after {
		right:0;
	}
}

@media screen and (max-width: 767px) {
	.nav {
		position:absolute;
		top:-1000px;
		left:0;
		right:0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-transition: all .6s;
		transition: all .6s;
	}
	.nav.block {
		width: 100%;
		padding:10% 5% 5%;
		background:rgba(255,255,255,0.9);
		top:0;
		left:0;
		right:0;
		bottom:0;
		z-index:100;
		text-align:center;
		position:fixed;
	}
	ul.nav li a:hover:after {
		width:50%;
	}
}

/* menu btn */
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	float:right;
	position:fixed;
	width: 30px;
	height: 25px;
	z-index:101;
	top:2%;
	right:5%;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #0054A7;
}
.menu-trigger span:nth-of-type(1) { top: 0; }
.menu-trigger span:nth-of-type(2) { top: 11px; }
.menu-trigger span:nth-of-type(3) { bottom: 0; }

.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(20px) rotate(-45deg);
	transform: translateY(11px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-20px) rotate(45deg);
	transform: translateY(-11px) rotate(45deg);
}
@media screen and (min-width: 768px) {
	.menu-trigger {
		display:none;
	}
}


/* --------------------------------------
 
           footer
		
--------------------------------------*/

/* pagetop */
.pagetop {
	background:#F4F4F4;
	border-top:#DDD 1px solid;
	border-bottom:#DDD 1px solid;
	font-size:1.2rem;
	margin-top:110px;
}
.pagetop a {
	font-weight:bold;
}

.pagetop a{
	color:#1F1F1F;
	text-decoration:none;
	font-weight:bold;
}

.pagetop a:before {
	content:"\f106";
	font-family:FontAwesome;
	font-weight:normal;
	font-size:1rem;
	color:#FFF;
	background:#1F1F1F;
	padding:0 4px;
	margin-right:5px;
}

.pagetop p {
	margin:0;
}
@media screen and (min-width: 769px) {
	.pagetop {
		padding:10px 0;
	}
	.pagetop a:hover {
		color:#0053A6;
	}
}

@media screen and (max-width: 768px) {
	.pagetop .inner {
		width:100%;
		text-align:center;
	}
	.pagetop p {
		padding:10px;
	}
	.pagetop a {
		background:#0053A6;
		color:#FFF;
		padding:10px 0;
		display:block;
	}
		
	.pagetop a:before {
		background:none;
	}
}

#footer {
	max-width:1000px;
	margin:0 auto;
	padding:22px 0;
}
#footer .fl-r {
	text-align:center;
}

#footer .fl-r li {
	display:inline-block;
}
.copy {
	background:#0E3472;
	padding:12px 0;
	color:#FFF;
	text-align:center;
	font-size:1rem;
	margin:0;
}
@media screen and (min-width: 769px) {
	#footer .fl-r {
		border-left:#DDD 1px solid;
		padding-left:20px;
	}
}

@media screen and (max-width: 768px) {
	#footer {
		width:90%;
	}
}

/* --------------------------------------
 
            side
		
--------------------------------------*/
.side_menu {
	margin-bottom:20px;
}
.side_menu .title{
	border-bottom:#0073B7 4px solid;
	font-size:2rem;
	color:#0053A6;
	padding:25px 20px 20px;
	position:relative;
}
.side_menu .title:before, .side_menu .title:after {
	content:"";
	width:100%;
	position:absolute;
	left:0;
	right:0;
	top:0;
	margin:auto;
	border-radius:5px 5px 0 0;
}
.side_menu .title:before {
	height:100%;
	background: rgb(248,252,253); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(248,252,253,1) 1%, rgba(221,245,255,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(248,252,253,1) 1%,rgba(221,245,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(248,252,253,1) 1%,rgba(221,245,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f8fcfd', endColorstr='#ddf5ff',GradientType=0 ); /* IE6-9 */
	bottom:0;
	z-index:-2;
}
.side_menu .title:after {
	content:"";
	height:50%;
	background:rgba(255,255,255,0.6);
	z-index:-1;	
}

.side_menu li {
	border:1px solid #DDD;
	border-top:none;
	margin:0;
}
.side_menu li a {
	padding:12px 15px 12px 45px;
	display:block;
	color:#1F1F1F;
	text-decoration:none;
	position:relative;
}
.side_menu li a:hover {
	background:#EDF4FA;
}

.side_menu li a:before {
	content:"\f105";
	font-family:FontAwesome;
	font-size:1rem;
	line-height:1;
	color:#FFF;
	background:#49B0E1;
	border-radius:100px;
	padding:2px 5px;
	margin-right:5px;
	position:absolute;
	left:20px;
	top:0;
	bottom:0;
	margin:auto;
	height:10px;
}

.side_menu li li {
	border:none;
	border-top:1px solid #DDD;
}

.side_menu li li a:before {
	background:none;
	color:#49B0E1;
}
	

/* --------------------------------------
 
            top
		
--------------------------------------*/

.main_img img {
	width:100%;
}
.main_img li {
	margin:0;
}
.bg_blue {
	background:#E6F8FD;
	padding-top:30px;
}

#top .catch {
	font-size:2rem;
	font-weight:bold;
	color:#0052A5;
	margin-bottom:15px;
}


/* news */

ul.news_list dl {
	border-bottom:#AAA dotted 1px;
}
ul.news_list:not(.detail) dl a{
	display:block;
	overflow:hidden;
	padding:15px 3px;
	color:#333;
}

ul.news_list:not(.detail)  dl a:hover {
	background:#EDF4FA;
}

ul.news_list dt, ul.news_list dd {
	float:left;
}
ul.news_list dt {
	margin-right:15px;
	color:#AAA;
}
ul.news_list dd a {
	color:#333;
	font-weight:bold;
}

/* --------------------------------------
 
            technology
		
--------------------------------------*/
.reseputo .case th,
.reseputo .case td {
	padding:10px;
	border:#10253F 1px solid;
	font-weight:bold;
}
.reseputo .case thead th {
	background:#10253F;
	color:#FFF;
	text-align:center;
}
.reseputo .case tbody {
	color:#10253F;
}

.reseputo .case tbody td {
	font-size:1.1rem;
}

.reseputo .case ul {
	border-bottom:#10253F 2px dashed;
	padding-bottom:10px;
	margin-bottom:10px;
}

.reseputo .case ul:last-child {
	border:none;
	padding:0;
	margin:0;
}

.reseputo .case dl {
	overflow:hidden;
}

.reseputo .case dt {
	float:left;
	width:75%;
}
.reseputo .case dd {
	float:right;
	width:25%;
}
	
.reseputo .box_wrap {
	border:#10253F 2px solid;
	padding:12px;
}
.reseputo .box_wrap .box {
	border:#C0504D 1px solid;
	margin-bottom:15px;
	position:relative;
}

.reseputo .box_wrap .box h5 {
	background:#C0504D;
	padding:10px;
	color:#FFF;
	font-weight:bold;
	text-align:center;
}

.reseputo .box_wrap .box-inner {
	padding:10px;
	color:#10253F;
	font-size:1.2rem;
	font-weight:bold;
}

.reseputo .box_wrap .box.box-b {
	border-color:#40166D;
}
.reseputo .box_wrap .box.box-b h5 {
	background:#40166D;
}

.reseputo .box_wrap .box.box-c {
	border-color:#984807;
	margin:0;
}
.reseputo .box_wrap .box.box-c h5 {
	background:#984807;
}	

.reseputo .box-a:after, .reseputo .box-b:after {
	content:url(../img/technology/icn_arrow_b01.png);
	position:absolute;
	left:5px;
	bottom:-37px;
	z-index:1;
}
.reseputo .box-b:after {
	content:url(../img/technology/icn_arrow_b02.png);
}

.reseputo .result table {
	border:#10253F 2px solid;
}
.reseputo .result th,
.reseputo .result td{
	font-weight:bold;
	padding:5px;
	border:none;
}
.reseputo .result th:first-child {
	border-right:#FFF 1px solid;
}
.reseputo .result thead th{
	background:#10253F;
	color:#FFF;
	text-align:center;
}
.reseputo .result tbody {
	font-size:1.2rem;
}
.reseputo .result tbody tr:nth-child(2n+1) {
	background:#D0D8E8;
}

.reseputo .result tbody tr:nth-child(2n+2) {
	background:#E9EDF4;
}

@media screen and (min-width: 769px) {
	.reseputo {
		overflow:hidden;
		position:relative;
	}
	.reseputo .case {
		max-width:250px;
		float:left;
		position:relative;
		margin-right:15px;
	}
	.reseputo .case:after {
		content:url(../img/technology/icn_arrow_r01.png);
		position:absolute;
		right:-29px;
		top:60px;
		z-index:1;
	}
	.reseputo .box_wrap {
		max-width:222px;
		float:left;
	}
	.reseputo .result {
		max-width:185px;
		position:absolute;
		bottom:0;
		right:0;
	}
	.reseputo .box-c:after {
		content:url(../img/technology/icn_arrow_r02.png);
		position:absolute;
		top:5px;
		right:-29px;
	}
}
@media screen and (max-width: 768px) {
	.reseputo .case, .reseputo .box_wrap {
		margin-bottom:20px;
	}
}


/* --------------------------------------
 
            company
		
--------------------------------------*/
.catch {
	color:#0052A5;
	font-size:2.4rem;
	font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.overview_list dl {
	overflow:hidden;
	border-bottom:#DDD 1px solid;
	padding:15px 0;
}

a.map {
	color:#FFF;
	background:#FF8000;
	border-radius:2px;
	text-decoration:none;
	padding:2px 5px;
	margin-left:5px;
}
a.map:hover {
	background:#E06601;
}

@media screen and (min-width: 769px) {
	.overview_list dt, .overview_list dd {
		float:left;
	}

	.overview_list dt {
		width:20%;
	}
	
	.overview_list dd {
		width:80%;
	}
}

/* history */
.overview_list.history dt {
	width:10%;
	float:left;
}

@media screen and (max-width: 768px) {
	.overview_list.history dt {
		width:20%;
	}
	.overview_list.history dt:nth-child(2) {
		width:80%;
	}
	.overview_list.history dd {
		display:block;
	}
}

/* --------------------------------------
 
           ir
		
--------------------------------------*/

ul.triangle li {	
	vertical-align:top;
	position:relative;
	padding-left:12px;
}
ul.triangle li:before {
	content:"▶";
	font-size:1rem;
	margin-right:5px;
	color:#0054A7;
	position:absolute;
	left:0;
}

@media screen and (min-width: 769px) {
	ul.triangle li {
		display:inline-block;
		width:45%;
	}
	ul.triangle li:nth-child(2n+1) {
		margin-right:4%;
	}
	#ir .name {
		position:relative;
		top:140px;
	}
}

/* performance */
#ir .ttl-gray {
	background:#F4F4F4;
	text-align:center;
	padding:2px 0;
	margin-bottom:5px;
}

.column-1 {
	margin:0 auto;
}
.financial {
	font-size:1.2rem;
}

.financial th, .financial td {
	padding:5px;
	border:#AAA 1px solid;
}

.financial thead th:last-child, .financial tbody td:last-child {
	background:#B8CAD6;
}

.financial thead th:first-child, .financial tbody th:first-child  {
	background:#F4F4F4;
}

.financial.white thead th:first-child, .financial.white tbody th:first-child {
	background:none;
}

.financial thead th {
	background:#DDE5EB;
	text-align:center;
}

.financial tbody td {
	text-align:right;
}

/* data */

ul.pdf-list {
	border-top:#AAA 1px dotted;
}
ul.pdf-list dl {
	border-bottom:#AAA 1px dotted;
}

ul.pdf-list dl a {
	color:#1F1F1F;
	display:block;
	overflow:hidden;
	padding:12px 3px;
}
ul.pdf-list dl a:hover {
	background:#EDF4FA;
}

ul.pdf-list dt {
	float:left;
}
ul.pdf-list dt:before {
	content:"▶";
	font-size:1rem;
	margin-right:5px;
	color:#0054A7;
}
ul.pdf-list dd {
	float:right;
}
ul.pdf-list dd:after {
	content:url(../img/common/icn_pdf.png);
	margin-left:5px;
}

.all_btn {
	color:#1F1F1F;
	text-decoration:none;
}
.all_btn:hover {
	color:#0052A5;
}

/* --------------------------------------
 
              news
		
--------------------------------------*/
#news dl {
	padding: 15px 3px;
	overflow:hidden;
}
#news dl dd:nth-child(2) {
	font-weight:bold;
}
#news dl dd:nth-child(3) {
	display:block;
	margin-top:12px;
}

/* --------------------------------------
 
              data-health
		
--------------------------------------*/
#data-health dl {
	padding: 15px 3px;
	overflow:hidden;
}
#data-health dl dd:nth-child(2) {
	font-weight:bold;
}
#data-health dl dd:nth-child(3) {
	display:block;
	margin-top:12px;
}
#data-health ul.news_list dl a {
	padding:0;
}
#data-health ul.news_list dl a:hover {
	background:none;
}


/* --------------------------------------
 
             contact
		
--------------------------------------*/
#contact .policy, #ir .policy{
	border:#F4F4F4 3px solid;
	padding:15px;
	margin-bottom:45px;
}
.form th, .form td {
	border:none;
	border-bottom:#DDD 1px solid;
	vertical-align:top;
}

.required {
	background:#FF8000;
	color:#FFF;
	border-radius:2px;
	padding:0 3px;
	font-size:1.2rem;
}

.form .required {
	float:right;
}

.form [class*="text"] {
	border:0;
	padding:5px 10px;
	background:#F4F4F4;
	border:#DDD 1px solid;
	border-radius:3px;
}

/* セレクトボックス */
.select-box select {
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	background:#F4F4F4;
	border:#DDD 1px solid;
	padding:5px 30px 5px 5px;
	border-radius:3px;
}

.select-box .area {
	position:relative;
}
.select-box .area:after {
	content:"\f0d7";
	font-family:FontAwesome;
	font-size:1.2rem;
	position:absolute;
	right: 12px;
	height: 18px;
	top: 0;
	bottom: 0;
	margin: auto;
}

/* 送信*/
input[type="submit"] {
  -webkit-appearance: none;
}

input.send {
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    padding: 15px 50px;
    background:#0073B7;
    color: #fff;
	border-radius:5px;
    border-style: none;
	font-size:2rem;
	cursor:pointer;
	-webkit-transition: .3s;
  	transition: .3s;
}
input.send:hover {
	background:#0155A7;
}

input[type="submit"][disabled] {
	background:#B7B7B7;
}
@media screen and (max-width: 767px) {
	input.send {
		padding:25px 0;
		width:100%;
	}
}

@media screen and (min-width: 768px) {
	.form th:first-child, .form td:nth-child(2) {
		border-top:#DDD 1px solid;
	}

	.form .text_s { width:80px; }
	.form .text_m { width:140px; }
	.form .text_l { width:380px; }
	.form .text_area { width:80%; }
}

@media screen and (max-width: 767px) {
	.form th, .form td {
		display:block;
	}
	.form [class*="text"] {
		width:94%;
		padding:10px 3%;
	}
}
/* --------------------------------------
 
              404
		
--------------------------------------*/
#notfound {
	margin-top:160px;
}

#notfound .bold {
	font-size:2.4rem;
}
	
#notfound .blue {
	color:#0052A5;
	font-size:3.8rem;
}

/* --------------------------------------
 
              sitemap
		
--------------------------------------*/
ul.map_list li {
	border-bottom:#DDD 1px solid;
	margin-bottom:0;
}
ul.map_list li a {
	display:block;
	padding:10px 0;
	text-decoration:none;
	color:#1F1F1F;
}
ul.map_list li a:hover {
	background:#EDF4FA;
}
ul.map_list > li {
	position:relative;
}
ul.map_list > li a {
	padding-left:20px;
}
ul.map_list > li:before {
	content:"";
	width:8px;
	height:3px;
	background:#0052A5;
	position:absolute;
	left:0;
	top:20px;
}

ul.map_list > li ul {
	border-top:#DDD 1px solid;
}
ul.map_list > li li:last-child {
	border:none;
}