@charset "utf-8";


@font-face {
  font-family: "FuturaMedium";
  src: url("../font/Futura-Medium.eot?")  format('eot'),
       url("../font/futura.woff2") format('woff2'),
       url("../font/Futura-Medium.woff")  format('woff');
}

.FuturaMedium {
  font-family: 'FuturaMedium',"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif!important;
}


/*------------------------------------------------------------------------------
  reset
------------------------------------------------------------------------------*/
html {
  color: #000;
  font-size:16px;
  line-height:2;
  font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  letter-spacing:0.1em;
}

body {
  background: #fff;
  margin: 0;
}

img {
  border: 0;
  margin: 0;
  vertical-align: top;
  max-width:100%;
  height: auto;
}

p {
  margin: 0 0 1em;
  padding: 0;
}

a {
  color: #58595a;
  text-decoration: none;
  -webkit-transition: 0.5s;
}

@media (min-width:640px){
  a:hover,
  .hover:hover {
    opacity: .6;
    text-decoration: none;
    -webkit-transition: 0.5s;
  }
}

input, select, textarea {
  font-family: "游ゴシック",'Yu Gothic','YuGothic',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",'メイリオ',Meiryo,Osaka,sans-serif;
}
f
table{
  border-collapse:collapse;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 14px;
  font-weight: normal;
  margin: 0;
  padding: 0;
}

p{
  margin-bottom:1em;
  line-height: 1.8em;
}

p:last-child{
  margin-bottom:0;
}

.clearfix {
  clear: both;
}
.clearfix:after {
  clear: both;
  content: "";
  display: block;
  height: 0;
  font-size: 0;
  visibility: hidden;
}

.clear{
  clear:both;
}

.outer-block {
  min-width: 1180px;
}

.inner-block {
  margin: 0 auto;
  padding: 0;
  position: relative;
  width: 1140px;
}

.inner-block:after {
  clear: both;
  content: "";
  display: block;
  height: 0;
  font-size: 0;
  visibility: hidden;
}

#wrapper {
  position: relative;
  padding-top:95px;
}

.pc {
  display:block !important;
}
.pc-ib {
  display: inline-block !important;
}

.sp {
  display:none !important;
}
.sp-ib {
  display: none !important;
}

*:focus,
*:active {
  outline: none;
}
.btn {
display: block;
margin: 40px auto;
padding: 1em 0;
text-align: center;
color: #ffffff;
background-color: #000000;
}
.large {
width: 500px;
}
.text_center { text-align: center; }
.text_left {
	width: 720px;
	text-align: left;
	margin-left: auto;
	margin-right: auto;
}

/*------------------------------------------------------------------------------
  header
------------------------------------------------------------------------------*/
#header{
  height: 220px;
  background:#ffffff;
  position:fixed;
  left:0;
  top:0;
  width:100%;
  z-index:500;
  box-sizing:border-box;
  text-align: center;
  }

#header .inner-block{
  padding:0;
}

.logo{
margin: 30px auto;
}

#header .logo{
  width:350px;
}

#header .navi{
  margin: 20px auto 0;
  padding: 15px 0;
  border-top:1px solid #000000; 
  border-bottom:3px solid #000000;
}

#header .navi li{
  display: inline-block;
  padding: 0 15px;
  font-size:16px;
  font-family: 'FuturaMedium';
}

#header .navi li a{
  color:#000000;
  letter-spacing: 0.1em;
}
@media (min-width:640px){
  #header .navi li a:hover{
    color:#cccccc;
    opacity: 1;
  }
}


/*------------------------------------------------------------------------------
  footer
------------------------------------------------------------------------------*/
footer {
clear: both;
padding: 80px 0;
text-align: center;
}
footer p { font-size: 11px; letter-spacing: 0.2em;}

@media (min-width:640px){
  .sp_nav,.sp_bg{
    display:none!important;
  }
}


/*------------------------------------------------------------------------------
  mv
------------------------------------------------------------------------------*/
.mainv{
}
.mainv .logo_bg {
  height: 200px;
  background: url(../img/main_bg.jpg) no-repeat;
  width:100%;
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}
@media (min-width:640px){
.mainv{
}
.mainv .logo_bg {
  height: 600px;
}
}
.mainv .logo{
  width:480px;
  height:178px;
  position:absolute;
  left:0;
  right:0;
  top:-25px;
  bottom:0;
  margin:auto;
  z-index:300;
}

.mainv .logo img{
  width:100%;
}

/*------------------------------------------------------------------------------
  main-content
------------------------------------------------------------------------------*/
.content{
  padding:0 0 10px;
}
body.under .content #id01 { margin-top: 200px; }
.mainv + .content{
  padding-top:70px;
}
.inner_conts {
width: 100%;
margin: 0 auto;
padding: 20px 0 0;
}

@media screen and (min-width: 640px){
	.inner_conts700 {
	width: 700px;
	margin: 0 auto;
	padding: 20px 0 30px 0;
}
}



.bg{
  width:100%;
}

.bg01{
  background: url(../img/about_bg.jpg) #000000;
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  height:200px;
}

.bg02{
  background: url(../img/about_bg.jpg) #000000;
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  height:200px;
  margin-bottom: 30px;
}
.bg03{
  height:400px;
}
	.google-maps iframe {
	width: 100% !important;
	height: 400px; !important;
	}
.content04 {
  padding-bottom: 50px;
  border-bottom: 1px solid #000000;
}
.tl_block{
  margin-top: 80px;
  margin-bottom: 20px;
  color:#000000;
  text-align:center;
}

.tl_block.tl_block01{
  margin-bottom:30px;
}

.tl_block .tl{
  font-family: "Times New Roman";
  color:#000000;
  font-size:40px;
  margin:0 0 5px;
  line-height:1;
  letter-spacing: 0.1em;
}

.tl_block .tl span{
  display:inline-block;
  position:relative;
}

.tl_block .tl span:before{
  content:"";
  background:#ADADAD;
  height:1px;
  width:45px;
  position:absolute;
  left:-65px;
  top:0;
  bottom:0;
  margin:auto;
}

.tl_block .tl span:after{
  content:"";
  background:#ADADAD;
  height:1px;
  width:45px;
  position:absolute;
  right:-60px;
  top:0;
  bottom:0;
  margin:auto;
}

.tl_block .subtl{
  color:#000000;
  font-size:12px;
  letter-spacing: 0.14em;
}



.box_cont:last-child{
  margin-bottom:0;
}

table {
	width: 720px;
	margin: 10px auto;
	border-collapse: separate;
	border-spacing: 1px;
	line-height: 1.7em;
}
table th {
	width: 170px;
	padding: 2em 0em;
	font-weight: bold;
	vertical-align: top;
	text-align: right;
	border-bottom: 1px solid #ccc;
	box-sizing: border-box;
}
table td {
	width: 550px;
	padding: 2em 1em;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
	box-sizing: border-box;
}

.font18 {
  font-size: 18px;
}
.fontb {
  font-weight: bold;
}
/*------------------------------------------------------------------------------
  clearfix
------------------------------------------------------------------------------*/
.color_list:after,
.item_wrap:after,
.box_set01:after,
.contact_list:after,
.contblock06:after,
.contblock04 .block:after,
.contblock04 .block_set:after,
.contblock02 .box:after,
.pr_block:after{
  clear: both;
  content: "";
  display: block;
  height: 0;
  font-size: 0;
  visibility: hidden;
}