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

*{
	margin					: 0;
	padding					: 0;
	font-family: 'Verdana','Helvetica',sans-serif;
	/*font-family				: 'メイリオ','Hiragino Kaku Gothic Pro',"ＭＳ Ｐゴシック",sans-serif;*/
	-webkit-text-size-adjust: 100%;/*スマホのフォントサイズ自動調整機能を無効にする指定*/
}

html,body{
	width					: 100%;
	/*transition				: all 0.5s;*/
	min-height					: 100%;
	font-size				: 62.5%;
	/*font-size				: 52.5%;*/
	color: #595757;
	box-sizing: border-box;
}

body{
	
	min-width:109rem;
	overflow-x				:scroll;
}

a{
	text-decoration			: none;
	color: #595757;
}

ul{
	list-style				: none;
}

table{
	border-collapse			: collapse;
}

article{
	margin					: 0 auto;
}

h1{
	margin: 0;
	padding: 0;
}

/* ----- clearfix start ------ */

.clearfix:after {
	content: " ";
	display: block;
	visibility: hidden;
	clear: both;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
}

.clearfix { display: block; }
/* no ie mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }

div.wrapper{
	width: 100%;
}

header{
	/*position: fixed;
	top: 0;
	z-index: 9999;*/
	width: 100%;
}

div.header_obi{
	width: 100%;
	position: relative;
	z-index: 100;
	background: #fff;
	box-shadow: 1px 5px 10px -3px rgba(0,0,0,0.4);
	-webkit-box-shadow: 1px 5px 10px -3px rgba(0,0,0,0.4);
	-moz-box-shadow: 1px 5px 3px -10px rgba(0,0,0,0.4);
}

div.header_box{
	width: 109rem;
	height: 6.7rem;
	margin: 0 auto;
	position: relative;
	z-index: 100;
	box-sizing: border-box;
	padding: 1.4rem 1rem 1.2rem 1rem;
	
}

div.head_info_box{
	float: right;
}

ul.head_menu{
	margin-top: 2rem;
	text-align: right;
}

ul.head_menu li{
	display: inline-block;
	border-left: solid 0.1rem #595757;
	padding: 0 1.5rem 0 1.5rem;
}

ul.head_menu li:last-child{
	border-right: solid 0.1rem #595757;
}

a.head_link{
	display: block;
	font-size:1.2rem;
	color: #595757;
	line-height: 1.4;
	margin: 0 auto;
}

a.head_link:hover{
	color: #0088cb;
}

/****
ドロップダウンメニュー部分
**********************************************/

div.main_link_box{
	/*width: 98rem;*/
	padding: 1.5rem 1rem 0 1rem;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
	z-index: 90;
	background: rgb(255,255,255);
}

.menu {
    position: relative;
    width: 100%;
    height: 5rem;
    width: 107rem;
    margin: 0 auto;
}

.menu > li {
    float: left;
    /*width: 24.8%; /* グローバルナビ4つの場合 */
	width: 16.55%;
    height: 3.5rem;
    line-height: 1.5;
    background: rgba(255, 255, 255);
	border-left: 0.1rem dotted #595757;
}

.menu > li:last-child {
	border-right: 0.1rem dotted #595757;
}

.menu > li a {
    display: block;
    color: #595757;
	font-size: 1.2rem;
	text-align: center;
	height: 100%;
	box-sizing: border-box;
	padding-top: 0.8rem;
}

.menu > li a:hover {
    color: #999;
}

ul.menu__second-level {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
}

ul.menu__third-level {
    visibility: hidden;
    opacity: 0;
}

ul.menu__fourth-level {
    visibility: hidden;
    opacity: 0;
}

.menu > li:hover {
    background: #dff1fc;
    -webkit-transition: all .5s!important;
    transition: all .5s!important;
}

.menu__second-level li {
    border-top: 1px solid #dcdcdd;
}

.menu__third-level li {
    border-top: 1px solid #111;
}

.menu__second-level li a:hover {
    background: #dff1fc;
}

.menu__third-level li a:hover {
    background: #2a1f1f;
}

.menu__fourth-level li a:hover {
    background: #1d0f0f;
}

/* floatクリア */
.menu:before,
.menu:after {
    content: " ";
    display: table;
}

.menu:after {
    clear: both;
}

.menu {
    *zoom: 1;
}

.menu > li.menu__single {
    position: relative;
}

li.menu__single ul.menu__second-level {
    position: absolute;
    top: 2.5rem;
    width: 100%;
    background: rgba(255,255,255,0.9);
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

li.menu__single:hover ul.menu__second-level {
    top: 3.5rem;
    visibility: visible;
    opacity: 1;
}

li.right_border{
	border-right: 0.1rem dotted #595757
}

li.menu__single ul.menu__second-level a{
   box-sizing: border-box;
   padding-top: 1.8rem;
   padding-bottom:1.5rem;
}

span.head_two_line{
	display: block;
	line-height:1.4rem;
}

a.top_pad_adj{
	padding-top:0.3rem!important;
}

/****************ここまで****************/

div.contents_box{
	/*background: #f7f7f7;*/
}

/***
	フッター部分
*****************************************/

footer{
	width: 100%;
	text-align: center;
}

div.footer_out_box{
	text-align: left;
	background: #fff;
	/* border-top: solid 1px rgba(0,0,0,.4); */
}

div.footer_inner_box{
	width: 109rem;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 5rem 3.3rem 5rem 3.3rem;
}

ul.footer_link_out{
	display: inline-block;
	font-size: 0;
	vertical-align: top;
	margin-right: 4rem;
}

ul.footer_link_left{
	width: 16.2rem;
}

ul.footer_link_leftcenter{
	width: 19.5rem;
}

ul.footer_link_rightcenter{
	width: 13.2rem;
}

ul.footer_link_right{
	width: 7rem;
}

li.two_line_box{
	padding: 1.2rem 0 1.2rem 0;
}

a.text_link{
	font-size: 1.2rem;
	line-height: 3.8rem;
	color: #595757;
}

a.text_link:hover{
	color: #0088cb;
}

a.text_link span{
	padding-right: 0.6rem;
}

a.two_height{
	line-height: 1.6rem;
}

div.footer_logo_box{
	display: inline-block;
	vertical-align: top;
	border-left: solid 0.1rem rgba(0,0,0,.4);
	font-size: 1.2rem;
	line-height: 1.9;
	color: #595757;
	padding-left: 3.5rem;
	box-sizing: border-box;
	padding-top: 2.1rem;
	padding-bottom: 2rem;
}

div.footer_logo_box img{
	display: block;
	margin: 0 auto 1.5rem auto;
}

div.copyright {
	font-size: 1rem;
	padding: 2rem 0 2rem 0;
	color: #595757;
	border-top: solid 1px rgba(0,0,0,.4);
}

#pageTop {
    bottom: 3px;
    position: fixed;
    right: 20px;
}

a.page_scroll{
	background-color: rgba(0,160,232,0.8);
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 1.5rem;
    font-weight: bold;
    height: 35px;
    padding: 0.5rem 0 0;
    text-align: center;
    text-decoration: none;
    width: 35px;
    z-index: 9999;
	cursor:pointer; 
}

/***
	各ページメインタイトルバック画像部分
****************************************************/

div.main_title_box{
	background: url(../img/common_main_bk.png) no-repeat;
	width: 109rem;
	height: 35.5rem;
	box-sizing:border-box;
	margin: 0 auto;
	padding: 7.5rem 0 7.5rem 6rem;
}

/***
	各ページヘッダーロゴ部分（TOPページ除く）
****************************************************/

div.head_logo{
	float: left;
	display: block;
}

/***
	各ページグレーバック（TOPページ除く）
****************************************************/

div.gray_bk_box{
	background: #f7f7f7;
	width: 100%;
}

span.si-main-pdt{
	display: block;
	margin-top: 16px;
	box-sizing: border-box;
	padding-left: 16px;
	text-indent: -16px;
	line-height: 25px;
}



/*Safariだけに適用されるCSSハック*/
@media screen and (-webkit-min-device-pixel-ratio:0) {
.head_title {
  position: absolute;
  margin-top: 12px;
  margin-left: 400px;  /* align right */
	font-size: 12px;
	color: white;
  /*width: 460px;*/
}
}
