
/* ===============================================
  初期設定及び基本設定
=============================================== */

/* --------------------------------------------
   HTML5 display definitions
-------------------------------------------- */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display: block;
	margin:0;
	padding:0;
}

/* Corrects `inline-block` display not defined in IE 8/9.  */

audio, canvas, video {
	display: inline-block;
	*display: inline;
	*zoom: 1;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

/* Addresses styling for `hidden` attribute not present in IE 8/9. */

[hidden] {
    display: none;
}

/* --------------------------------------------
   Reset and Base
-------------------------------------------- */

html {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	margin:0;
	padding:0;
	height:100%;
}

body {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote,table th, tr, td {
	margin:0;
	padding:0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	border:0;
	empty-cells: show;
}

caption, th{
	text-align:left;
}

img, a img{
	border:0;
}

img {
	vertical-align: bottom;
}

ol, ul{
	list-style-type: none;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 500;
	line-height: 1.1;
}

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
  background: transparent;
}

a:active,
a:hover {
  outline: 0;
}

address {
  display: block;
  font-style: normal;
  line-height: 1.5;
}

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
  border-bottom: 1px dotted;
}


/* Corrects overflow displayed oddly in IE 9. */

svg:not(:root) {
    overflow: hidden;
}

/* ========= Forms ========= */

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    border: 0; 
    padding: 0; 
}

/* 
 * 1. Corrects font family not being inherited in all browsers.
 * 2. Corrects font size not being inherited in all browsers.
 * 3. Addresses margins set differently in Firefox 4+, Safari 5, and Chrome
 */

button,
input,
select,
textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 2 */
    margin: 0; /* 3 */
}

/* Addresses Firefox 4+ setting `line-height` on `input` using `!important` in the UA stylesheet. */

button,
input {
    line-height: normal;
}

/*
 * 1. Removes default vertical scrollbar in IE 8/9.
 * 2. Improves readability and alignment in all browsers.
 */

textarea {
    overflow: auto; /* 1 */
    vertical-align: top; /* 2 */
}

/* ========= clear ========= */

.clear {
	clear: both !important;
}

.clearfix:after {
	clear: both;
	height: 0;
	line-height: 0;
	visibility: hidden;
	display: block;
	content: '[.]';
}

/* clearfix for ie7 */
.clearfix{
	display: inline-block;
}

.clearfix {
	display: block;
}

/* --------------------------------------------
  全ページ共通基本設定
-------------------------------------------- */

body {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.5;
	color: #222;
	background-color: #fff;
}

/* ========= link ========= */

a {
	color: #0075c2;
	text-decoration: none;
	outline:none;
}

a:hover,
a:focus {
	color: #007bd0;
	text-decoration: underline;
}

header a,
header a:visited,
footer a,
footer a:visited {
	color:#222 !important;
}

header a:hover,
header a:focus,
footer a:hover,
footer a:focus {
	color:#222 !important;
}

figure {
  margin: 0;
}

/* ========= img ========= */

.img-rounded {
  border-radius: 6px;
}

.img-circle {
  border-radius: 50%;
}

/* ========= font ========= */

sub, sup {
	font-size:70%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
} 

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

strong {
	font-weight:bold;
}

h2 {
	font-size: 28px;
	width:960px;
	margin:0 auto;
	padding:40px 0;
	line-height:1;
	letter-spacing:0.2em;
}

/* --------------------------------------------
   共通レイアウト
-------------------------------------------- */

.headbox:after,
.worldwide:after,
header:after,
nav:after,
.container:after,
footer:after,
footer nav:after,
footer aside:after {
	clear: both;
	height: 0;
	visibility: hidden;
	display: block;
	content: '[.]';
	overflow:hidden;
}

/* ========= header ========= */

header {
	margin-right: auto;
	margin-left: auto;
	position:relative;
}

.headbox {
	width:960px;
	height:76px;
	position:relative;
	margin-right: auto;
	margin-left: auto;
}

.head_leftbox {
	width:200px;
	float:left;
}

.head_rightbox {
	width:760px;
	text-align:right;
	padding-top:5px;
	float:left;
}

.worldwide {
	margin-bottom:5px;
}

.head_rightbox li {
	float:right;
	display:block;
	background: url(../img/arrow_01.gif) no-repeat 0 0.5em;
	padding: 0 0 0 10px;
	font-size:12px;
}

.head_list li {
	margin-right:18px;
}

/* ========= 検索 ========= */

.search_waku{
  float:right;
		display:block;
  		width:200px;
		height:22px;
		margin-bottom:5px;
		}

.search_s{
  float:left;
  width:140px;
		height:18px;
		margin:0 0 5px 4px;
		border:#CCCCCC 1px solid;
		}

*html .search_s{
  float:left;
  width:136px;
		height:20px;
		margin:0 4px 4px 5px;
		border:#CCCCCC 1px solid;
		}

*+html body .search_s{
  float:left;
  width:136px;
		height:20px;
		margin:0px 4px 4px 5px;
		border:#CCCCCC 1px solid;
		}

/* ========= global_navi ========= */

#global_navi {
	width:960px;
	position:relative;
	margin-right: auto;
	margin-left: auto;
	margin-bottom:14px;
	height:25px;
}

#global_navi ul li {
	float:left;
	display:block;
	width:239px;
}

#global_navi ul li div {
	border-right:1px solid #ddd;
}

#global_navi ul li div:first-child {
	width:238px;
	border-left:1px solid #ddd;
}

#global_navi ul li a {
	display: block;
	line-height: 20px;
	height:20px;
	width:239px;
	text-align:center;
	letter-spacing:1px;
	color:#000;
}

#global_navi ul li a:hover,
#global_navi ul li#here a {
	background-color:#0075c2;
	border-radius: 10px;
	color:#f6f6f6;
 	text-decoration: none;
	margin:0 10px;
	width:219px;
}


/* ========= contents ========= */

#topic_path {
	width:100%;
	background-color:#e4e4e4;
	font-size:12px;
	padding:8px 0;
}

#topic_path li {
	display:inline;
	line-height:120%;
	margin-left:5px;
}

#topic_path li a {
	padding-right:15px;
	background:url(../img/arrow_02.png) no-repeat center right;
}

#contents_title {
	width:100%;
	border-bottom:1px solid #ddd;
}

.inside_box{
	width:960px;
	margin-left:auto;
	margin-right:auto;
}

#container {
	width:960px;
	margin:0 auto;
	padding:25px 0 0;
}

#container:after {
	clear: both;
	height: 0;
	visibility: hidden;
	display: block;
	content: '[.]';
	overflow:hidden;
}

/* ========= footer ========= */

footer {
	clear:both;
	margin-top:30px;
}

footer .navi_area,
footer .copyright_area {
	width:100%;
}

footer .navi_area {
	background-color:#f6f6f6;
	border-top:1px solid #ddd;
	padding:25px 0;
}

footer .copyright_area {
	background-color:#ddd;
	padding:15px 0;
	font-size:12px;
}

footer #gototop,
footer nav,
footer aside {
	width:960px;
	margin-left:auto;
	margin-right:auto;
}

footer #gototop {
	text-align:right;
	margin-bottom:5px;
}

footer .category {
	width:240px;
	float:left;
}

footer nav dt {
	font-size:16px;
	letter-spacing:1px;
	margin-bottom:15px;
}

footer nav li {
	background: url(../img/arrow_01.gif) no-repeat 0 0.5em;
	padding: 0 0 0 12px;
	font-size:12px;

}

footer aside li {
	background: url(../img/arrow_01.gif) no-repeat 0 0.5em;
	padding: 0 0 0 10px;
	margin-right:15px;
	font-size:12px;
	line-height:1.2;
	float:right;
	display: inline-block;
	*display: inline;
	*zoom: 1;
}

/* --------------------------------------------
   Google検索
-------------------------------------------- */

/* adjustment 121017 from here*/
.top_right_waku table.gsc-search-box input#gsc-i-id1{
	width:125px !important;
}
.top_right_waku input.gsc-search-button{
	width:45px !important;
	padding:0 !important;
	margin:0 0 0 2px !important;
}
.top_right_waku td.gsc-clear-button{
	width:0 !important;
}
.top_right_waku td.gsc-clear-button div.gsc-clear-button{
	width:0 !important;
	margin:0 !important;
	padding:0 !important;
}
/* adjustment 121017 to here*/

  input.gsc-input {
    border-color: #BCCDF0;
  }
  input.gsc-search-button {
    border-color: #666666;
    background-color: #CECECE;
  }
  .gsc-input input.gsc-input {
    background: none repeat scroll 0% 0% white !important;
  }

#cse-search-form {
	width: 195px !important;
	margin-bottom:5px !important;
	_margin-bottom:5px;
	margin-left:5px !important;
	_margin-left:5px;
}

#cse-search-form table.gsc-search-box td.gsc-input {
	padding: 0 !important;
	_padding: 0;
}

.gsc-input {
 width: 500px
}

#cse-search-form input[type="text"] {
	padding: 0 !important;
	height: 18px;
	width: 140px !important;
	border:#CCCCCC 1px solid;
}

#cse-search-form input[type="submit"] {
	width: 50px;
	height: 20px;
	margin-left: 0 !important;
	padding-top:0px;
	padding-left:5px;
	letter-spacing:5px;
	background-color: #0070BA;
	border: 1px solid #0070BA;
	text-shadow:none;
	color: #FFFFFF;
	border-radius: 0 0 0 0;
	-moz-border-radius: 0 0 0 0;
	-webkit-border-radius: 0 0 0 0;
	-webkit-appearance: none;
}


.gsc-search-button{
	_width: 50px;
	_height: 20px;
	_margin-left: 0;
	_padding-top:0px;
	_padding-left:0px;
	_letter-spacing:5px;
	_text-shadow:none;
	_color: #FFFFFF;
	
}

.gsc-clear-button{
	visibility: hidden !important;
	_visibility: hidden;
	display:none;
}

/* --------------------------------------------
   serch_result
-------------------------------------------- */

#cse{
	width:400px;
}

 .gsc-control-cse {
    font-family: Arial, sans-serif;
    border-color: #FFFFFF;
    background-color: #FFFFFF;
	padding:0 !important;
  }
  input.gsc-input {
    border-color: #BCCDF0;
  }
  input.gsc-search-button {
    border-color: #666666;
    background-color: #CECECE;
  }
table.gsc-search-box td.gsc-input {
    padding-right: 20px !important;
}
input.gsc-input{
	height: 18px !important;
	_height: 18px;
	border:#CCCCCC 1px solid;
}
.gsc-search-button input[type="submit"] {
	width: 50px;
	height: 20px;
	margin-left: 0 !important;
	_margin-left: 0;
	padding-top:0px;
	padding-left:5px;
	letter-spacing:5px;
	background-color: #0070BA;
	border: 1px solid #0070BA;
	text-shadow:none;
	color: #FFFFFF;
	border-radius: 0 0 0 0;
	-moz-border-radius: 0 0 0 0;
	-webkit-border-radius: 0 0 0 0;
	-webkit-appearance: none;
}

.gsc-result-info{
	border-bottom:none;
}

.gsc-wrapper{
	width:860px;
	padding:10px 20px 0 20px;
}

.gsc-tabHeader.gsc-tabhInactive {
    border-color: #E9E9E9;
    background-color: #E9E9E9;
}
.gsc-tabHeader.gsc-tabhActive {
    border-top-color: #FF9900;
    border-left-color: #E9E9E9;
    border-right-color: #E9E9E9;
    background-color: #FFFFFF;
}
.gsc-tabsArea {
    border-color: #E9E9E9;
}
.gsc-webResult.gsc-result,
.gsc-results .gsc-imageResult {
    border-color: #FFFFFF;
    background-color: #FFFFFF;
}
  
.gsc-above-wrapper-area {
	border-bottom: none !important;
}

#cse a { color:#015289; text-decoration: none; }
#cse a:link { text-decoration: none; }
#cse a:visited { color:#6D3A9B; text-decoration: none; }
#cse a:hover { color: #CC0000; text-decoration: underline; }


.gsc-webResult.gsc-result:hover,
.gsc-imageResult:hover {
    border-color: #FFFFFF;
    background-color: #FFFFFF;
}
.gs-webResult.gs-result a.gs-title:link,
.gs-webResult.gs-result a.gs-title:link b,
.gs-imageResult a.gs-title:link,
.gs-imageResult a.gs-title:link b {
    color: #015289;
	text-decoration: none;
}
.gs-webResult.gs-result a.gs-title:visited,
.gs-webResult.gs-result a.gs-title:visited b,
.gs-imageResult a.gs-title:visited,
.gs-imageResult a.gs-title:visited b {
    color: #6D3A9B;
	text-decoration: none;
}
.gs-webResult.gs-result a.gs-title:hover,
.gs-webResult.gs-result a.gs-title:hover b,
.gs-imageResult a.gs-title:hover,
.gs-imageResult a.gs-title:hover b {
    color: #CC0000;
	text-decoration: underline;
}
.gs-webResult.gs-result a.gs-title:active,
.gs-webResult.gs-result a.gs-title:active b,
.gs-imageResult a.gs-title:active,
.gs-imageResult a.gs-title:active b {
    color:#CC0000;
	text-decoration: underline;
}
.gsc-cursor-page {
    color: #015289;
	text-decoration: none;
}
a.gsc-trailing-more-results:link {
    color: #015289;
	text-decoration: none;
}
.gs-webResult .gs-snippet,
.gs-imageResult .gs-snippet {
    color: #000000;
}
.gs-webResult div.gs-visibleUrl,
.gs-imageResult div.gs-visibleUrl {
    color: #008000;
}
.gs-webResult div.gs-visibleUrl-short {
    color: #008000;
}
.gs-webResult div.gs-visibleUrl-short {
    display: none;
}
.gs-webResult div.gs-visibleUrl-long {
    display: block;
}
.gsc-cursor-box {
    border-color: #FFFFFF;
}
.gsc-results .gsc-cursor-box .gsc-cursor-page {
    border-color: #E9E9E9;
    background-color: #FFFFFF;
    color: #0000CC;
}
.gsc-results .gsc-cursor-box .gsc-cursor-current-page {
    border-color: #FF9900;
    background-color: #FFFFFF;
    color: #0000CC;
}
.gs-promotion {
    border-color: #336699;
    background-color: #FFFFFF;
}
.gs-promotion a.gs-title:link,
.gs-promotion a.gs-title:link *,
.gs-promotion .gs-snippet a:link {
    color: #015289;
	text-decoration: none;
}
.gs-promotion a.gs-title:visited,
.gs-promotion a.gs-title:visited *,
.gs-promotion .gs-snippet a:visited {
    color: #0000CC;
	 text-decoration: underline;
}
.gs-promotion a.gs-title:hover,
.gs-promotion a.gs-title:hover *,
.gs-promotion .gs-snippet a:hover {
    color: #0000CC;
	 text-decoration: underline;
}
.gs-promotion a.gs-title:active,
.gs-promotion a.gs-title:active *,
.gs-promotion .gs-snippet a:active {
    color:#CC0000;
	text-decoration: underline;
}
.gs-promotion .gs-snippet,
.gs-promotion .gs-title .gs-promotion-title-right,
.gs-promotion .gs-title .gs-promotion-title-right *  {
    color: #000000;
}
.gs-promotion .gs-visibleUrl,
.gs-promotion .gs-visibleUrl-short {
    color: #008000;
}


/* --------------------------------------------
   汎用共通style
-------------------------------------------- */

a:hover img.opa {
    background: none repeat scroll 0 0 #FFFFFF;
    opacity: 0.8;
}

.wrapbox { width:100%; }
.wrapbox:after {
	clear: both;
	height: 0;
	visibility: hidden;
	display: block;
	content: '[.]';
}

.fl { float:left; }
.fr { float:right; }

.tl { text-align: left; }
.tr { text-align: right; }
.tc { text-align: center; }

.vt { vertical-align:top !important; }
.vm { vertical-align:middle !important; }
.vb { vertical-align:bottom !important; }

.hide { display: none; }
.show { display: block; }

.bd_gray { border:1px solid #ccc; }


/* -------- font -------- */

.bold { font-weight:bold; }
.nowrap {white-space: nowrap;}

.color_red { color:#e60012;}
.color_red2 { color:#fd594e;}
.color_blue { color:#0860a8; }
.color_blue2 { color:#007bd0; }
.color_yellow { color:#dcaf00; }

.txt_12 {font-size:12px;}
.txt_13 {font-size:13px;}
.txt_14 {font-size:14px;}
.txt_15 {font-size:15px;}
.txt_16 {font-size:16px;}
.txt_17 {font-size:17px;}
.txt_18 {font-size:18px;}

/* -------- margin -------- */

.mt0 { margin-top:0; }
.mt5 {	margin-top:5px; }
.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; }
.mt45 {	margin-top:45px; }
.mt50 {	margin-top:50px; }
.mt1em { margin-top:1em; }

.mb0 { margin-bottom:0; }
.mb5 {	margin-bottom:5px; }
.mb10 {	margin-bottom:10px; }
.mb15 {	margin-bottom:15px; }
.mb20 {	margin-bottom:20px; }
.mb25 {	margin-bottom:25px; }
.mb30 {	margin-bottom:30px; }
.mb35 {	margin-bottom:35px; }
.mb40 {	margin-bottom:40px; }
.mb45 {	margin-bottom:45px; }
.mb50 {	margin-bottom:50px; }
.mb1em { margin-bottom:1em; }

.ml0 {	margin-left:0; }
.ml5 {	margin-left:5px; }
.ml10 {	margin-left:10px; }
.ml15 {	margin-left:15px; }
.ml20 {	margin-left:20px; }
.ml25 {	margin-left:25px; }
.ml30 {	margin-left:30px; }
.ml35 {	margin-left:35px; }
.ml40 {	margin-left:40px; }
.ml45 {	margin-left:45px; }
.ml50 {	margin-left:50px; }

.mr0 {	margin-right:0; }
.mr5 {	margin-right:5px; }
.mr10 {	margin-right:10px; }
.mr15 {	margin-right:15px; }
.mr20 {	margin-right:20px; }
.mr25 {	margin-right:25px; }
.mr30 {	margin-right:30px; }
.mr35 {	margin-right:35px; }
.mr40 {	margin-right:40px; }
.mr45 {	margin-right:45px; }
.mr50 {	margin-right:50px; }


/* -------- padding -------- */

.pt0 { padding-top:0; }
.pt5 {	padding-top:5px; }
.pt10 {	padding-top:10px; }
.pt15 {	padding-top:15px; }
.pt20 {	padding-top:20px; }
.pt25 {	padding-top:25px; }
.pt30 {	padding-top:30px; }
.pt35 {	padding-top:35px; }
.pt40 {	padding-top:40px; }
.pt45 {	padding-top:45px; }
.pt50 {	padding-top:50px; }

.pb0 { padding-bottom:0; }
.pb5 { padding-bottom:5px; }
.pb10 {	padding-bottom:10px; }
.pb15 {	padding-bottom:15px; }
.pb20 {	padding-bottom:20px; }
.pb25 { padding-bottom:25px; }
.pb30 {	padding-bottom:30px; }
.pb35 {	padding-bottom:35px; }
.pb40 {	padding-bottom:40px; }
.pb45 {	padding-bottom:45px; }
.pb50 {	padding-bottom:50px; }

.pl0 {	padding-left:0; }
.pl5 {	padding-left:5px; }
.pl10 {	padding-left:10px; }
.pl15 {	padding-left:15px; }
.pl20 {	padding-left:20px; }
.pl25 {	padding-left:25px; }
.pl30 {	padding-left:30px; }
.pl35 {	padding-left:35px; }
.pl40 {	padding-left:40px; }
.pl45 {	padding-left:45px; }
.pl50 {	padding-left:50px; }

.pr0 {	padding-right:0; }
.pr5 {	padding-right:5px; }
.pr10 {	padding-right:10px; }
.pr15 {	padding-right:15px; }
.pr20 {	padding-right:20px; }
.pr25 {	padding-right:25px; }
.pr30 {	padding-right:30px; }
.pr35 {	padding-right:35px; }
.pr40 {	padding-right:40px; }
.pr45 {	padding-right:45px; }
.pr50 {	padding-right:50px; }


/* -------- list -------- */

ul.inline,
ol.inline {
  margin-left: 0;
  list-style: none;
}

ul.inline li,
ol.inline li {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

ul.arrow_01 li,
ul.arrow_01_float li,
ul.arrow_01_inline li {
	background: url(../img/arrow_01.gif) no-repeat 0 0.5em;
	padding: 0 0 0 12px;
}

ul.arrow_02 li,
ul.arrow_02_float li,
ul.arrow_02_inline li {
	background: url(../img/arrow_02.gif) no-repeat 0 0.5em;
	padding: 0 0 0 12px;
}

ul.arrow_03 li,
ul.arrow_03_float li,
ul.arrow_03_inline li {
	background: url(../img/arrow_03.gif) no-repeat 0 0.5em;
	padding: 0 0 0 12px;
}

ul.arrow_01_float li,
ul.arrow_02_float li,
ul.arrow_03_float li{
	float:left;
	display:block;
	margin-right:8px;
}

ul.arrow_01_inline li,
ul.arrow_02_inline li,
ul.arrow_03_inline li {
	margin-right:20px;
	display: inline-block;
	*display: inline;
}

ul.normalstyle,
ol.normalstyle {
    margin-left:1.8em;
}

.disc {
	list-style-type:disc;
}

.decimal {
	list-style-type:decimal;
}

ul.kome li,
p.kome {
	padding-left: 1em;
	text-indent: -1em;
}



