@charset "utf-8";

* {
  box-sizing: border-box;
}
html, body,
ul, ol, li,
h1, h2, h3, h4, h5, h6, p,
form, input, div {
  margin: 0;
  padding: 0;
}
body{
  color:#323232;
  font-size:12px;
  line-height:1.8;
  -webkit-text-size-adjust: 100%;
  min-width:320px;
  font-family:'游ゴシック体', '游ゴシック', 'Yu Gothic', YuGothic, "メイリオ", Meiryo,
    "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
    "ＭＳ　Ｐゴシック","MS P Gothic",
    sans-serif;
}
h1{
	font-size:16px;
	font-weight:normal;
	margin:100px 0 20px 0;
}
h2{
	margin:30px 0 0 0;
	font-size:14px;
	font-weight:normal;
}
@media (max-width: 780px){
  h1{
	  margin:0 0 20px 0;
  }
}
p{
	margin:30px 0;
  line-height:2;
}
li {
  list-style: none;
}
a {
  text-decoration: none;
  color: #4eb7c0;
  transition: all .1s;
}
a:hover {
  color:#2ca6e0;
  text-decoration: none;
}
a img:hover{
	opacity:0.8;
}
.structure{
  width:100%;
  max-width:900px;
  min-width:320px;
  margin-right:auto;
  margin-left:auto;
  padding-left:20px;
  padding-right:20px;
  position:relative;
  word-break:break-all;
}
@media (max-width: 580px){
	.structure{
	  padding-left:10px;
	  padding-right:10px;
	}
}
.right{
	float:right;
}
.block {
    display: inline-block;
}
.clear{
	clear:both;
}
img{
	max-width:100%;
}
.center{
	text-align:center;
}
.marginRight{
	margin-right:10px;
}
/*************************************/
/* フォーム */
/*************************************/
.submit{
   margin:30px 0;
}
form{
  display:block;
}
input[type=submit], button{
  -webkit-appearance: none;
  color:#fff;
  background-color:#221815;
  border:none;
  margin:1px;
  padding:5px 20px;
  line-height:1.5;
  min-width:100px;
  font-size:16px;
  font-family:'游ゴシック体', '游ゴシック', 'Yu Gothic', YuGothic, "メイリオ", Meiryo,
    "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
    "ＭＳ　Ｐゴシック","MS P Gothic",
    sans-serif;
  max-width:400px;
  width:100%;
}
input[type=submit]:hover, button:hover{
  opacity:0.8;
  cursor:pointer;
}
input[type=submit]:disabled, button:disabled{
  background-color:#dcdcdc;
  opacity:0.8;
  color:#555;
  cursor:default;
}
input[type=text], textarea, input[type=password], input[type=file], select{
  padding:5px;
  margin:2px 0;
  border:1px solid #aaa;
  border-radius:1px;
  max-width:400px;
  width:100%;
}
input[type=file]{
  width:205px;
  font-size:12px;
}
input[type=text]:hover, textarea:hover, fieldset:hover{
  border:1px #29abe2 solid;
}
label{
  display:inline-block;
  margin:0px 10px 0 0;
  cursor:pointer;
  padding:0 3px;
}


/*************************************/
/* メッセージ */
/*************************************/
.error-message{
  font-size:14px;
  color:#ff0000;
  background:#ffeeee;
  padding:5px 10px 3px 10px;
  max-width:400px;
}
#flashMessage, #authMessage{
  background:#ffeeee;
  border:1px solid #E7242E;
  color:#ff0000;
  border-radius:3px;
  margin:5px 0;
  padding:5px 10px 3px 20px;
  box-shadow:inset 0px -15px 20px 0px rgba(0,0,0,0.03), inset 0px 15px 20px 0px rgba(255,255,255,0.1);
}


/*************************************/
/* ヘッダー */
/*************************************/
header{
	width:100%;
	padding:50px 0;
}
.headerLogo{
  float:left;
}
.headerLogo h1{
	margin:0;
	padding:0;
}
.headerLogo img{
	width:150px;
}
nav {
	float:right;
	width:300px;
}
nav li{
	float:left;
  display:block;
  width:150px;
}
nav li a{
  display:block;
	font-size:14px;
  line-height:22px;
  text-align:center;
  color:#555;
  font-weight:bold;
}


@media (max-width: 780px){
  header{
    text-align:center;
  }
  .headerLogo{
    float:none;
  }
  nav{
    float:none;
    text-align:center;
    width:100%;
    margin:20px 0;
  }
  nav li{
    float:none;
    display:inline-block;
  }
}

/*************************************/
/* 申し込みフォーム */
/*************************************/
.contactFormWrap{
	background:#f8f8f8;
	padding:30px;
	margin:50px 0;
}
.contactFormBlock{
	overflow:hidden;
	padding:10px 0;
}
.contactFormLabel{
	width:109px;
	float:left;
	line-height:30px;
}
.contactFormInput{
	margin-left:110px;
}
.contactFormWrap input[type=submit].big{
	margin:0;
}
@media (max-width: 640px){
	.contactFormWrap{
	  padding:10px;
	  margin:50px -10px;
	 }
	.contactFormLabel{
	  width:auto;
	  float:none;
	  line-height:30px;
	}
	.contactFormInput{
	  margin-left:0px;
	}
}


.serviceLogoWrap{
	text-align:center;
	margin:100px 0;
}

.serviceLogo{
	height:200px;
	width:200px;
	display:inline-block;
	border-top:1px solid #aaa;
	border-bottom:1px solid #aaa;
	text-align:center;
	margin:40px 50px;
}
.serviceLogo img{
  width:150px;
  vertical-align:middle;
}
.serviceLogo span{
  line-height:200px;
}

@media (max-width: 780px){
  .serviceLogoWrap{
    margin:0 0 50px 0;
  }









