* {	margin:0;	padding:0;}

img {
	vertical-align:bottom;
}
html{
	overflow-y:scroll;
}
html, body {
  height: 100%;
}
body{	
	margin:0;
	padding:0;
	color:#333;
	font-size:14px;
	line-height:1.4;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	}
body {
  font-family: "Helvetica Neue", "Arial","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Meiryo", sans-serif;
}
body.background {
  background-image: url('../img/main_bg.jpg');
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
}

 a:link {	color:#3b80ce;	text-decoration:none;}
 a:visited {	color:#3b80ce; text-decoration:none;}
 a:hover {	color:#3b80ce; text-decoration:underline}


/* フッター下部固定 */
#container{
	min-height: 100%;
  _height: 100%;
	background-color: #f4f4f4;
}

/* ヘッダー */
header{
	padding-bottom: 10px;
	background-color: #FFF;
}
#header_inner{
	margin:0 auto;
	padding:0 10px;
	width:1100px;
}
#header_inner h1{
	float:left;
	padding-top: 0;
	padding-right: 0;
	padding-bottom: 0;
	padding-left: 5px;
	margin-top: 10px;
}
#header_inner h1 img{
	max-width: 300px;
    height: auto;
}
#header_right{
	float:right;
	overflow:hidden;
	margin-top:23px;
	color:#fff;
}
#header_right p{
	float:right;
}
#user_name{
	font-size:12px;
	margin-top:6px;
	margin-right:20px;
	color: #333;
}
#logout_btn{
}
#logout_btn a{
	font-size: 12px;
	color : #000;
	background-color: #ccc;
	border: 1px solid #ccc;
    display:inline-block;
	padding :5px 10px;
	border-radius: 3px;
}

#header_menu {
    display:inline-block;
    width:60px;
    z-index:100;
    float: left;
    margin:10px 5px 10px 0;
    position:relative;
}
#header_menu_btn {
    border: 1px solid #DDDDDD;
    padding:0 10px;
    line-height: 0.8;
}
#header_menu_btn span {
	display: inline-block;
	-webkit-transition: .2s;
	transition: .2s;
	box-sizing: border-box;
}
#header_menu_btn {
	position: relative;
	text-align:center;
}
#header_menu_btn span {
	left: 0;
	width: 100%;
	height: 3px;
	margin-bottom: 0;
	background-color: #31628c;
}
#header_menu_btn p {
	margin:5px 0;
	font-size: 90%;
}
#header_menu_btn span:nth-of-type(1) {
	top: 0;
}
#header_menu_btn span:nth-of-type(2) {
	top: 8px;
}
#header_menu_btn span:nth-of-type(3) {
	bottom: 0;
}
#header_menu_list {
	display:none;
	background-color: rgba(0, 0, 0, 0.6);
	position:absolute;
	top:55px;
	left:0;
}
#header_menu_list a{
	display:block;
	color:#FFFFFF;
	width:150px;
	font-size:120%;
	padding:5px 10px;
	border-bottom:1px solid #FFFFFF;
	text-decoration:none;
}
#header_menu_list li{
	padding:0 15px;
	margin:5px 0;
}
/* コンテンツ */
#contents{
	padding:0 0 125px;
	margin:0 auto;
	width:1100px;
	font-size:12px;
}
#contents input[type="text"],
#contents input[type="number"],
#contents input[type="tel"],
#contents input[type="email"],
#contents select{
	vertical-align:baseline;
}
#contents #local li {
	display:inline-block;
    }
#contents #local li p{
	align-items: center;
	font-size: 160%;
	background: #0060b0 0 0 no-repeat padding-box;
	border: 2px solid #fff;
	border-radius: 150px;
	box-shadow: 0 3px 1px rgba(167, 153, 153, 0.36);
	display:flex;
	height: 150px;
	justify-content: center;
	line-height: 1.6;
	margin: 20px;
	padding: 15px;
	width: 156px;
    color: #fff;
}
#contents #local a.toroku {
    border: 2px solid #fff;
	box-shadow: 0 3px 1px rgba(167, 153, 153, 0.36);
    border-radius: 8px;
    background: #e0072e 0 0 no-repeat padding-box;
	font-size: 200%;
    margin: 50px 20px;
	padding: 15px 100px;
    color: #fff;
    text-decoration: none;
}
#contents #local a.toroku:hover {
	background-color: #9e001b;
}


a.btn_cancel {
	display: inline-block;
	font-size: 16px;
	padding : 8px 15px;
	border: 1px solid #ccc;
	background : #eee;
	border-radius: 5px;
	color: #666;
}
input[type="radio"], input[type="checkbox"] {
  margin: -2px 8px 0 5px;
}


h3 { font-size: 20pt;}
h4 { font-size: 14pt;}


.heading05 {
	position: relative;
	padding-bottom: 50px;
	font-size: 28px;
	text-align: center;
    margin-top: 50px;
    letter-spacing: 0.3rem;
}

.heading05::before {
	content: attr(data-en);
	display: block;
	color: #3e91d0;
	font-size: 20px;
	font-style: italic;
	text-transform: uppercase;
    padding-bottom: 10px;
}
/* 見出し下の斜線　
.heading05::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%) rotate(30deg);
	width: 1px;
	height: 40px;
	background-color: #3e91d0;
}
*/


/* フッター */
footer{
	background-color:#313131;
	color:#ffffff;
	font-size:12px;
	padding:18px 0 19px;
	border-top:solid 1px #a6a6a6;
	border-bottom:solid 1px #a6a6a6;
	text-align:center;
	margin-top:-55px;
	//height:16px;
}
footer p{
	margin:0 auto;
	width:980px;
}
footer .about {
    margin: 10px
}
.pagetop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  cursor: pointer;
}


.txt_a_c{text-align:center;}
.txt_a_r{text-align:right;}
.txt_a_l{text-align:left;}

.clear {	clear: both;}
.mini {
	font-size: x-small;
}

.float_r {float:right;}
.float_l {float:left;}

.cf:before, .cf:after {
	content:"";
	display:table;
}
.cf:after {
	clear:both;
}
.cf {
	zoom:1;
}
.bold{	font-weight:bold;}
.red{	color:#f00;}
.orange{	color:#f90;}
.mt50 {margin-top: 50px;}
.mb100 {margin-bottom: 100px;}

/*------------------------------
 ログイン
------------------------------*/
#login_body{
	position:relative;
}
#login_wrapper{
	position:absolute;
	top:48%;
	left:50%;
	width:620px;
	height:470px;
	margin-left:-310px;
	margin-top:-235px;
}
/*
#login_block{
	background:url(../img/login/logo_red_txt.png) no-repeat center 50px #efecec;
	width:620px;
	height:250px;
	border:solid 1px #ddd;
	border-radius:5px;
	padding: 175px 0 45px;
	box-shadow: 2px 2px 0px 0px rgba(255,255,255,1) inset,-2px -2px 0px 0px rgba(255,255,255,1) inset;
}
*/
.login_input{
	text-align:right;
	font-weight:bold;
	margin:0 auto 15px;
	width:359px;
	line-height:28px;
	padding-right: 76px;
}
#login_btn{
	text-align:center;
	margin-top:28px;
}
#login_btn{
border-radius: 4px 4px 4px 4px;
  background: url("/img/button-bg.png") repeat-x scroll 0 0 #BBBBBB;
  border-color: #DDDDDD #DDDDDD #CCCCCC;
  border-style: solid;
  border-width: 1px;
  color: #333333;
  margin: 0;
  overflow: visible;
  padding: 4px 16px 7px;
  text-shadow: 1px 1px 0 #FFFFFF;
  width: auto;
  font-size: 150%;
  font-weight: bold;
}
#err_msg{
	color:#f00;
	padding:0 10px;
	margin:0 auto;
	font-weight:bold;
	margin-left: 123px;
	padding-bottom: 5px;
	text-align: center;
}
#comp_id{
	margin-top:20px;
}
#login_block input[type="text"],
#login_block input[type="tel"],
#login_block input[type="email"],
#login_block input[type="password"]{
	padding:6px 8px;
	width: 250px;
  border: solid 1px #ccc;
	border-radius:5px;
}
#hozon{
	margin:-10px auto 0;
	font-weight: bold;
	line-height: 28px;
	width:122px;
}
#flashMessage.message {
  padding: 1px;
  font-size: 110%;
  font-weight: bold;
  padding: 5px 0px;
  color: #ce3031;
  text-align: center;
}

