@charset "utf-8";

/*clr
-------------------------------------------------------------------------------------*/

body{
margin:0;
padding:0;
color:#231815;
overflow-x:hidden;
font-family: sans-serif;
font-size: 16px;
line-height: 1.75;
}
a:link {color:#646464; text-decoration:underline;}
a:visited {color:#646464;text-decoration:underline;}
a:hover {color:#ccc; text-decoration:underline;}
a:active {color:#505050;text-decoration:none;}
.fontKiefer{color:#87ceeb;}
.marker {background: linear-gradient(transparent 40%, #fff66c 40%);}

/* wrapper/header
--------------------------------------------------------------------------------------*/
#wrapper{
	max-width: 1100px;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: center;
}

#wrapper #header{
	width: 100%;
	margin: 0 0;
	padding: 2% 0;
	position: relative;
}
#wrapper #header h1 {
	width: 75%;
	float:left;
	text-align: left;
	margin: 1% 0 0 0;
}
#wrapper #header h1 span{font-size: 1.15em; font-weight: 700; margin-left: 0.6em; margin-top: 1.4%; line-height: 1; display: inline-block;color: #666;}

#wrapper #header #headR {
	width: 25%;
	float:right;
	
}
#wrapper #header #headR li{
	display: block;
	text-align:right;
	font-size: 1.1em;
}
#wrapper #header #headR li div{display: inline;}
#wrapper #header #headR li{color:#87ceeb;font-weight: 700;}
#wrapper #header #headR li a{color:#87ceeb;text-decoration: none;font-size: 1.3em;}

#nav {
	width: 100%;
	margin: 0;
	padding: 0;
}

#nav > ul {
	width: 100%;
	margin: 0;
	padding: 0;
	text-align:center;
	position:relative;
	display:table;
}
#nav > ul > li {
	position:relative;
	display: table-cell;
  vertical-align: middle;
	text-align:center;
	padding: 0.5% 0.5%;
	font-size: 0.95em;
	font-weight: 400;
}

#nav > ul > li > a {
	display:block;
	width:100%;
	height:100%;
	color:#000;
	text-decoration:none;
  vertical-align: middle;
}

#nav > ul > li.on, #nav > ul > li.on a { background-color: #87ceeb;color:#fff;}
#menu li a:hover {-webkit-transition: .3s ease-in-out;transition: .3s ease-in-out;text-decoration: none;color: #87ceeb;}
.slicknav_menu {display:none;}

/* common
--------------------------------------------------------------------------------------*/
#main_image{
	margin-bottom: 10%;
}

#index h2,
#second h2{
	text-align: center;
	font-size: 2em;
	font-weight: 700;
	color: #87ceeb;
	border-bottom: #000000 1px solid;
	margin-bottom: 3%;
	padding-bottom: 1.5%;
	line-height: 1.5;
}
.box,
.box2nd,
.box3rd {
	clear:both;
}
.box.parent_box {
	max-width: 1000px;
  display: flex;
  align-items: center;
}
.box.parent_box .textBox{
	width: 55%;
	padding-right: 5%;
}
.box.parent_box figure{
	width: 40%;
}

.width1000{
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	text-align:center;
}

.flex{
	display:flex;
	flex-wrap:wrap;
	justify-content:left;
	align-items:left;
}

.flex .item2{
	width:calc(48%);
	box-sizing: border-box;
	margin:0 2% 4% 0;
}
.flex .item2:nth-child(2n){margin:0 0 4% 2%;}

.flex .item3{
	width:calc(30%);
	box-sizing: border-box;
	margin:0 5% 5% 0;
}
.flex .item3:nth-child(3n){margin:0 0 5% 0;}
/*
.flex .item4{
	width:calc(23.4%);
	box-sizing: border-box;
	margin:0 2% 2% 0;
}
.flex .item4:nth-child(4n){margin:0 0 2% 0;}
*/


/* footer
--------------------------------------------------------------------------------------*/
#footer {
	width: 100%;
	margin: 0;
	padding: 3% 0 3% 0;
	text-align:center;
	background-color: #ebebeb;
}
#footer #foot {
	max-width: 1100px;
	width: 100%;
	margin: 0 auto;
	position: relative;
}
#footer #foot h2{
	text-align: center;
	font-size: 1.8em;
	font-weight: 400;
	color: #000;
	border-bottom: #000000 1px solid;
	margin-bottom: 3%;
}
#footer #foot #logo{
	margin-bottom: 2%;
}
#footer #foot .contact{
	font-size: 1.25em;
}
#footer #foot .contact li{
	margin-bottom: 2%;
	line-height: 1;
	font-weight: 700;
	color: #87ceeb;
}
#footer #foot .contact li.adress{
	color: #000;
	font-weight: 400;
}
#footer #foot .contact li.tel{margin-bottom: 0.5%;}
#footer #foot .contact li.mail{}
#footer #foot .contact li.form{margin-bottom: 3%;}
#footer #foot .contact li.sho{}
#footer #foot .contact li.mail a{color: #87ceeb; text-decoration: none;}
#copyright{
	padding: 5px 0;
	background: #87ceeb;
	color:#fff;text-align: center;
	font-size: 0.9em;
}


/* common
--------------------------------------------------------------------------------------

table.zero{
	width: 100%;
	text-align:left;
}

.zero th{
width:1%;
padding:0 0.5em 0 0;
vertical-align:top;
white-space:nowrap;
	font-weight: 400;
}
.zero td{
padding: 0;
text-align:left;
vertical-align:top;
}

*/
table.one{
	width: 100%;
	text-align:left;
	border-collapse:collapse;
	border: 1px solid #231815;
	line-height: 2;
}

.one th{
	width:10%;
padding: 60px 40px;
	border-bottom: 1px solid #231815;
	border-right: 1px solid #231815;
	text-align:center;
	vertical-align:middle;
	white-space:nowrap;
	font-weight: 400;
	background-color: #e6e6e6;
}
.one td{
width:auto;
padding: 60px 40px;
text-align:left;
	vertical-align:middle;
	border-bottom: 1px solid #231815;
}
table.two{
	width: 100%;
	text-align:left;
	border-collapse:collapse;
	line-height: 2;
}

.two th{
	width:5%;
padding: 12px 20px;
	border-right: 1px dotted #231815;
	text-align:left;
	vertical-align:middle;
	white-space:nowrap;
	font-weight: 400;
}
.two td{
width:auto;
padding: 12px 20px;
text-align:left;
	vertical-align:middle;
}

/* for tablet
--------------------------------------------------------------------------------------*/
/* 
--------------------------------------------------------------------------------------*/
@media screen and (max-width: 960px) {
	
/* wrapper/header
--------------------------------------------------------------------------------------*/
#wrapper{
	max-width:inherit;
	width: 100%;
	margin: 0 0;
	padding: 0;
}

#wrapper #header{
	width: 98%;
	margin: 0 0;
	padding: 2% 1%;
}
#wrapper #header h1 {
	width: 60%;
	float:left;
	text-align: left;
	margin: 0 0 0 0;
}
#wrapper #header h1 img{ width:100%;}
#wrapper #header h1 span{font-size: 1em; font-weight: 700; margin-left: 0; margin-top: 1.4%; line-height: 1; display: block;clear: left;}

#wrapper #header #headR {
	width: 35%;
}
#wrapper #header #headR li{
	display: block;
	text-align:right;
	font-size: 1em;
}
#wrapper #header #headR li div:nth-of-type(1) img{ width:15%; height: auto}
#wrapper #header #headR li div:nth-of-type(2) img{ width:75%; height: auto}
#wrapper #header #headR li a{font-size: 1em;}

#nav > ul {
	max-width:inherit;
	width: 100%;
	margin: 0 ;
	padding: 0;
	text-align:center;
	position:relative;
	display:table;
}
#nav > ul > li {
	position:relative;
	display: table-cell;
  vertical-align: middle;
	text-align:center;
	padding: 0.5% 0.5%;
	font-size: 0.8em;
	font-weight: 400;
}
.box.parent_box {
	max-width:inherit !important;
	width: 100% !important;
}
.box.parent_box .textBox{
	width: 65%;
	padding-right: 5%;
}
.box.parent_box figure{
	width: 30%;
}
.box.parent_box figure img{
	width: 100%;
	height: auto;
}
.width1000{
	max-width:inherit !important;
	width: 100% !important;
	margin-left: 0;
	margin-right: 0;
	text-align:center;
}

}



/* for smartphone
--------------------------------------------------------------------------------------*/
/* 
--------------------------------------------------------------------------------------*/
@media only screen and (max-width: 481px) {

html, body{
	width: 100%;
	font-size:14px;
	line-height:1.5;
	min-width:initial;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}


/* header
--------------------------------------------------------------------------------------*/
#wrapper #header{position:relative;}
#wrapper #header h1 {
	width:70%;
	text-align: left;
	margin-left: 2%;
	font-size: 0.72rem;
	line-height: 1.1;
	z-index:9715 !important;
	position: relative;
}
#nav {display: none;}
.slicknav_menu {display:block;}

#wrapper #header #headR {
display: none;	width: 30%;
}
	/*
#wrapper #header #headR li{
	display: block;
	text-align:right;
	font-size: 1em;
}
#wrapper #header #headR li div:nth-of-type(1) img{ width:20%; height: auto}
#wrapper #header #headR li div:nth-of-type(2) img{ width:80%; height: auto}
*/
	
#wrapper{
	width: 100%;
	margin: 0;
	padding: 0;
	text-align: center;
	overflow: hidden;
}
	

#main_image{
	margin-bottom: 5%;
}

.box.parent_box {
	max-width:inherit !important;
	width: 100% !important;
  display:block;
}

.box.parent_box .textBox{
	width: 100%;
	padding-right:0;
	margin-bottom: 5%;
}
.box.parent_box figure{
	width: 70%;
	margin:0 15% 5% 15%;
}
/**.box.parent_box figure img{
	width: 100%;
	height: auto;
}/
.width1000{
	max-width:inherit !important;
	width: 100% !important;
	margin-left: 0;
	margin-right: 0;
	text-align:center;
}
/* footer
--------------------------------------------------------------------------------------*/
#footer {
	width: 94%;
	margin: 0;
	padding:5% 3%;
}
#footer #foot {
	max-width:inherit;
	width: 100%;
	margin: 0;
}
#footer #foot h2{
	font-size: 1.2em;
	margin-bottom: 3%;
}
#footer #foot .contact{
	font-size: 1em;
}

#footer #foot .contact li{
	margin-bottom: 4%;
}

#footer #foot .contact li.tel{margin-bottom: 4%;}
#footer #foot .contact li.mail{}
#footer #foot .contact li.sho,
#footer #foot .contact li.form{
	width: 60%; margin: 0 20% 4% 20%;
	}

#copyright{
	font-size: 0.8em;
}
/*

	
.scroll{
width:100%;
overflow: auto;
}
.scroll table{width:180%;}

*/

table.two{
	width: 100%;
	text-align:left;
	border-collapse:collapse;
}

.two th{
	width: auto !important;
	display: block;
	padding:0 0;
	text-align:left;
	font-weight: 700;
	margin:0 0 2% 0;
	font-size:110%;
	word-break: break-all !important;
	white-space: normal !important;
	border-right: none !important;
}

.two td{
	width: auto;
	display: block; 
	padding:1% 0 10% 0;
	border-top: none;
	border-bottom: none;
text-align:left;
	font-weight: 400;
}

#index h2,
#second h2{
	font-size: 1.4rem;
	margin-bottom: 3%;
}

.width1000{
	max-width:inherit;
	width: 100%;
	margin-left: 0;
	margin-right: 0;
}


.flex .item2,
.flex .item3{
	width:calc(100%);
	margin:0 0 5% 0;
}

.flex .item2:nth-child(2n),
.flex .item3:nth-child(3n){margin:0 0 5% 0;}

#index .flex .item3,
#index .flex .item3:nth-child(3n){
	width:calc(90%);
	margin:5% 5% 10% 5%;
}

.form input,
.form textarea{ font-size: 0.9em; width: 95%;}
.form input.zip{width: 20%;}
.form input.telNo{width: 25%;}

}