@charset "UTF-8";

@import url(https://fonts.googleapis.com/css?family=Abel|Lato);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://indestructibletype-fonthosting.github.io/renner.css);


/*
	BASE
*******************************/

* {
	font-family:'Lato',Arial, Helvetica, "sans-serif", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	margin: 0;
	padding: 0;
	color: #231815;
}
.fbold {
	
	font-family:'Lato',Arial, Helvetica, "sans-serif", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

body * {line-height:1.22em;}


img {
	vertical-align:bottom;
	line-height:0;
	backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

p,th,td,dt,dd,li,h1,h2,h3,h4,h5,h6 { color:#231815;}

a,
a:link,
a:visited {
	color:#231815;
	text-decoration:underline;
}
a:hover {
	color:#666;
	text-decoration:none;
}

a img {
	outline:none;
	border:none;
}

.clear { clear:both;}

p {
	font-size: 16px;
	color: #231815;
	line-height: 1.8;
	margin: 0;
	padding: 0;
}

/*//////////////////////////////////////////////////////////////////////////*/



/*
	BASE LAYOUT
******************/

* img {
	max-width: 100%;
	height: auto;
	backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

/*
	HEADER LAYOUT
******************/

header #mainimg {
	width: 100%;
	height: 800px;
	overflow: hidden;
	background: url(ajax-loader.gif) no-repeat center center;
}
header #mainimg > div {
	/*transition: .5s;
	opacity: 1;
	-moz-opacity: 1;
	-webkit-opacity: 1;*/
}
header #mainimg.ready > div {
	/*opacity: 0;
	-moz-opacity: 0;
	-webkit-opacity: 0;*/
}
header #mainimg .slick-slide img {
	
}

header nav ul {
	max-width: 96%;
	text-align: center;
	letter-spacing: -0.4em;
	margin: 0 auto;
	padding: 40px 0;
}
header nav ul li {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	margin: 0 14px;
	text-align: center;
}
header nav ul li:nth-child(5) {
	display:none;
}
header nav ul li a,
header nav ul li a:link,
header nav ul li a:visited {
	font-size: 18px;
	line-height: 1em;
	text-decoration: none;
}
header nav ul li a::after {
	content:'';
	display: block;
	width: 0;
	height: 1px;
	background: #231815;
	transition:.3s;
	margin: 0 auto;
}
header nav ul li a:hover {
	color: #62544d;
}
header nav ul li a:hover::after {
	width: 100%;
}
header nav .snav {
	position: fixed;
	width: 100%;
	background: #FFF;
	top: -50px;
	left: 0;
	transition: .3s;
	z-index: 99;
	box-sizing:border-box;
	border-bottom:1px solid #62544d;
}
header nav .snav.unhide {
	top: 0;
}	
header nav .snav ul {
	padding:10px 0;
}

/*
	CONTENT LAYOUT
******************/

#main {
	margin: 0;
	padding: 0;
}

#main .section {
	max-width: 1300px;
	width: 94%;
	margin: 0 auto;
}

/**section1**/
.section1 {
	background: #f5f5f5;
}
.section1 .section {
	text-align: center;
	padding: 100px 0;
}
.section1 h1 {
	font-size: 38px;
	font-weight: 400;
	line-height: 1.3em;
	margin-bottom: 1em;
}
.section1 h1::after {
	content:'';
	display: block;
	width: 130px;
	height: 0.5em;
	margin: 0 auto;
	border-bottom: 1px solid #231815;
}
.section1 p {
	font-size: 21px;
	line-height: 2em;
	margin-bottom: 3em;
}
.section1 #logo {
	width:33%;
	max-width: 225px;
	margin: 0 auto;
}

/**section2**/
.section2 .section {
	padding: 100px 0 60px;
}
.section2 h1 {
	text-align: center;
	font-size: 40px;
	font-family: 'renner';
	letter-spacing: 3px;
	font-weight: 400;
	color: #62544d;
	margin-bottom: 1em;
}
.section2 h1::after {
	content:'';
	display: block;
	width: 130px;
	height: 0.5em;
	margin: 0 auto;
	border-bottom: 1px solid #231815;
}
.section2 p {
	font-size: 21px;
	line-height: 2em;
	margin-bottom: 2em;
	text-align: center;
}
.section2 .img {
	letter-spacing: -0.4em;
	margin: 0 -10px 30px;
}
.section2 .img img {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: calc(50% - 20px);
	margin: 0 10px;
}
.section2 dt,
.section2 dd {
	font-size: 19px;
	line-height: 1.7em;
	text-align: left;
}
.section2 dt {
	margin-left: -0.5em;
}

/**section3**/
.section3 {
	background: #f5f5f5;
}
.section3 .section {
	text-align: center;
	padding: 100px 0 15px;
}
.section3 h1 {
	text-align: center;
	font-size: 40px;
	font-family: 'renner';
	letter-spacing: 3px;
	font-weight: 400;
	color: #62544d;
	margin-bottom: 1em;
}
.section3 h1::after {
	content:'';
	display: block;
	width: 130px;
	height: 0.5em;
	margin: 0 auto;
	border-bottom: 1px solid #231815;
}
.section3 p {
	font-size: 21px;
	line-height: 2em;
	margin-bottom: 2em;
	text-align: center;
}
.section3 ul {
	letter-spacing: -0.4em;
	margin: 0 -10px 30px;
}
.section3 ul li {
	display: inline-block;
	vertical-align: top;
	width: calc(50% - 20px);
	margin: 0 10px 20px;
	text-align: left;
}
.section3 ul li img {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
}
.section3 ul li p {
	margin: 0;
	letter-spacing: normal;
	text-align: left;
}
.section3 ul li:nth-child(2) img {
	width: calc((100% - 20px) / 3);
	margin-right: 10px;
	margin-bottom: 10px;
}
.section3 ul li:nth-child(2) img:nth-child(3n) {
	margin-right: 0;
}
.section3 ul li:nth-child(2) img:nth-child(n + 4){
	margin-bottom: 0;
}
.section3 ul li:nth-child(n+3) img {
	width: calc((100% - 20px) / 2);
	margin-right: 20px;
}
.section3 ul li:nth-child(n+3) img:nth-child(2) {
	margin-right: 0;
}

/**section4**/
.section4 {
	display:none;
}
.section4 .section {
	padding: 100px 0 60px;
}
.section4 h1 {
	text-align: center;
	font-size: 40px;
	font-family: 'renner';
	letter-spacing: 3px;
	font-weight: 400;
	color: #62544d;
	margin-bottom: 1em;
}
.section4 h1::after {
	content:'';
	display: block;
	width: 130px;
	height: 0.5em;
	margin: 0 auto;
	border-bottom: 1px solid #231815;
}
.section4 p {
	font-size: 21px;
	line-height: 2em;
	margin-bottom: 2em;
	text-align: center;
}
.section4 .img {
	letter-spacing: -0.4em;
	margin: 0 -10px 90px;
}
.section4 .img img {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: calc(25% - 20px);
	margin: 0 10px;
}
.section4 .section > a,
.section4 .section > a:link,
.section4 .section > a:visited {
	display: block;
	font-size: 21px;
	background: #62544d;
	line-height: 1.8em;
	color: #FFF;
	text-decoration: none;
	width: 11em;
	text-align: center;
	letter-spacing: 2px;
	margin: 0 auto;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	box-sizing: border-box;
	border: 1px solid #62544d; 
}
.section4 .section > a:hover {
	color:  #62544d;
	background: #FFF;	
}

/**section5
.section5 {
	background: #f5f5f5;
}**/
.section5 .section {
	text-align: center;
	padding: 100px 0 90px;
}
.section5 h1 {
	text-align: center;
	font-size: 40px;
	font-family: 'renner';
	letter-spacing: 3px;
	font-weight: 400;
	color: #62544d;
	margin-bottom: 1em;
}
.section5 h1::after {
	content:'';
	display: block;
	width: 130px;
	height: 0.5em;
	margin: 0 auto;
	border-bottom: 1px solid #231815;
}
.section5 p {
	font-size: 21px;
	line-height: 2em;
	margin-bottom: 2em;
	text-align: center;
}
.section5 .img {
	width: 225px;
	margin: 0 auto;
}

/**section6**/
.section6 {
	background: #f5f5f5;
}
.section6 .section {
	text-align: center;
	padding: 100px 0 90px;
}
.section6 h1 {
	text-align: center;
	font-size: 40px;
	font-family: 'renner';
	letter-spacing: 3px;
	font-weight: 400;
	color: #62544d;
	margin-bottom: 1em;
}
.section6 h1::after {
	content:'';
	display: block;
	width: 130px;
	height: 0.5em;
	margin: 0 auto;
	border-bottom: 1px solid #231815;
}
.section6 form#mailformpro {
	width:94%;
	max-width:600px;
	margin:0 auto 30px;
}
.section6 form#mailformpro dl {
	letter-spacing:-0.4em;
	margin-bottom: 15px;
}
.section6 form#mailformpro dl dt {
	display:inline-block;
	letter-spacing:normal;
	vertical-align:top;
	float:none;
	margin0;
	padding: 10px 0;
	border:none;
	font-size:16px;
	line-height:1.3em;
	text-align:left;
	width: 12em;
}
.section6 form#mailformpro dl dt span {
	font-size: 0.8em;
	color:#F00;
}
.section6 form#mailformpro dl dd {
	display:inline-block;
	letter-spacing:normal;
	vertical-align:top;
	float:none;
	margin:0;
	padding:10px 0;
	border:none;
	font-size:16px;
	line-height:1.3em;
	text-align:left;
	width: calc(100% - 12em);
}
.section6 form#mailformpro dl dd p {
	font-size:0.8em;
}
.section6 form#mailformpro dl dd input {
	font-size:16px;
	line-height:1.2em;
	padding:5px;
}
.section6 .privacy {
	width:94%;
	height:250px;
	max-width:600px;
	margin:0 auto 30px;
	padding:20px 15px;
	box-sizing:border-box;
	border:1px solid #CCC;
	border-radius:6px;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	overflow:auto;
	background: #FAFAFA;
}
.section6 .privacy > div {
	text-align:left;
}
.section6 .privacy > div h2 {
	font-size:16px;
	text-align:center;
	line-height:1em;
	margin-bottom:1em;
}
.section6 .privacy > div h3 {
	font-size:14px;
	line-height:1em;
	margin-bottom:0.5em;
}
.section6 .privacy > div p {
	font-size:13px;
	line-height:1.5em;
	margin-bottom:1em;
}
.section6 .complete p {
	margin-bottom: 1em;
}
.section6 .complete > a,
.section6 .complete > a:link,
.section6 .complete > a:visited {
	display: block;
	font-size: 14px;
	background: #62544d;
	line-height: 1.8em;
	color: #FFF;
	text-decoration: none;
	width: 11em;
	text-align: center;
	letter-spacing: 2px;
	margin: 0 auto;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	box-sizing: border-box;
	border: 1px solid #62544d; 
}
.section6 .complete > a:hover {
	color:  #62544d;
	background: #FFF;	
}
/*
	FOOTER LAYOUT
******************/
#foot {
	width: 100%;
	padding-bottom: 60px;
	text-align: center;
}
#footer {
	padding: 30px 0;
	border-bottom: 1px solid #62544d;
	
}
#footer .logo {
	color: #62544d;;
	font-size: 22px;
	line-height: 1em;
	margin-bottom: 2em;
}
#footer .logo span {
	display: block;
	font-size: 15px;
	padding-top: 1em;
}
#footer #logo2 {
	max-width:430px;
	width: 50%;
	position: absolute;
	top: 20px;
	right: 0;
}
#footer .sns {
	letter-spacing: -0.4em;
}
#footer .sns a {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width:40px;
	margin: 0 5px;
}


#foot .cpy {
	width: 100%;
	text-align: center;
	font-size: 12px;
	line-height: 1.3em;
	padding: 20px 0;
	background: #f5f5f5;
}

.br1350,
.br1200,
.br1024,
.br900,
.br800,
.br768,
.br640,
.br480,
.br360 {
	display: none;
}

@media only screen and (max-width: 1500px) {

	header #mainimg {
		height: auto;
	}

}

@media only screen and (max-width: 1350px) {

.br1350 {
	display: inline;
}

}
@media only screen and (max-width: 1200px) {

.br1200 {
	display: inline;
}

}

@media only screen and (max-width: 1024px) {

/**section1**/
.section1 .section {
	padding: 60px 0;
}
.section1 h1 {
	font-size: 32px;
}
.section1 p {
	font-size: 18px;
	margin-bottom: 2em;
}

/**section2**/
.section2 .section {
	padding: 60px 0 45px;
}
.section2 h1 {
}
.section2 p {
	font-size: 18px;
}
.section2 dt,
.section2 dd {
	font-size: 17px;
}

/**section3**/
.section3 .section {
	padding: 60px 0 15px;
}
.section3 h1 {
}
.section3 p {
	font-size: 18px;
}
.section3 ul {
	letter-spacing: -0.4em;
	margin: 0 -10px 30px;
}

/**section4**/
.section4 .section {
	padding: 60px 0 45px;
}
.section4 p {
	font-size: 18px;
}
.section4 .img {
	margin: 0 -10px 60px;
}

/**section5**/
.section5 .section {
	padding: 60px 0 45px;
}
.section5 p {
	font-size: 18px;
}

/**section6**/
.section6 .section {
	padding: 60px 0 45px;
}
.section6 form#mailformpro dl dt {
	font-size:15px;
}
.section6 .privacy > div h2 {
	font-size:15px;
}
.section6 .privacy > div h3 {
	font-size:13px;
}
.section6 .privacy > div p {
	font-size:12px;
}
.section6 .complete p {
	margin-bottom: 1em;
}

.br1024 {
	display: inline;
}

}

@media only screen and (max-width: 900px) {

.br900 {
	display: inline;
}

}
@media only screen and (max-width: 800px) {

.br800 {
	display: inline;
}

}

@media only screen and (max-width: 768px) {

/*
	HEADER LAYOUT
******************/

header nav ul {
	padding: 20px 0;
}
header nav ul li {
	margin: 0 10px;
}
header nav ul li a,
header nav ul li a:link,
header nav ul li a:visited {
	font-size: 16px;
}
header nav ul li a::after {
	content:none;
}

/**section1**/
.section1 .section {
	padding: 45px 0;
}
.section1 h1 {
	font-size: 24px;
}
.section1 h1::after {
	width: 100px;
}
.section1 p {
	font-size: 15px;
	margin-bottom: 2em;
}

/**section2**/
.section2 .section {
	padding: 45px 0 30px;
}
.section2 h1 {
	font-size: 30px;
}
.section2 h1::after {
	width: 100px;
}
.section2 p {
	font-size: 16px;
}
.section2 dt,
.section2 dd {
	font-size: 15px;
}

/**section3**/
.section3 .section {
	padding: 45px 0 5px;
}
.section3 h1 {
	font-size: 30px;
}
.section3 h1::after {
	width: 100px;
}
.section3 p {
	font-size: 16px;
}
.section3 ul {
	letter-spacing: -0.4em;
	margin: 0 -10px 30px;
}

/**section4**/
.section4 .section {
	padding: 45px 0 45px;
}
.section4 h1 {
	font-size: 30px;
}
.section4 h1::after {
	width: 100px;
}
.section4 p {
	font-size: 16px;
}
.section4 .img {
	margin: 0 -10px 45px;
}

/**section5**/
.section5 .section {
	padding: 45px 0 45px;
}
.section5 h1 {
	font-size: 30px;
}
.section5 h1::after {
	width: 100px;
}
.section5 p {
	font-size: 16px;
}

/**section6**/
.section6 .section {
	padding: 45px 0 45px;
}
.section6 h1 {
	font-size: 30px;
}
.section6 h1::after {
	width: 100px;
}
.section6 form#mailformpro dl dt {
	font-size:14px;
}

.br768 {
	display: inline;
}

}

@media only screen and (max-width: 640px) {

header nav ul {
	padding: 10px 0;
	text-align: left;
}
header nav ul li {
	margin: 0;
	width: calc(100% / 3);
	margin: 5px 0;
}
header nav ul li a,
header nav ul li a:link,
header nav ul li a:visited {
	font-size: 15px;
}
header nav .snav {
	top: -90px
}
	
/**section6**/
.section6 form#mailformpro {
	max-width: 270px;
}
.section6 form#mailformpro dl {
	letter-spacing:-0.4em;
	margin-bottom: 15px;
}
.section6 form#mailformpro dl dt {
	display: block;
	width: 100%;
	padding: 0;
	margin-bottom: 10px;
}
.section6 form#mailformpro dl dd {
	display: block;
	width: 100%;
	padding: 0;
	margin-bottom: 10px;
}
.section6 form#mailformpro dl dd.name input {
	max-width: 40%;
}
.section6 form#mailformpro dl dd.mail input {
	max-width: 90%;
}
.section6 form#mailformpro dl dd.tell input {
	max-width: 23%;
}
.section6 form#mailformpro dl dd.detail textarea {
	max-width: 90%;
	max-height: 5em;
}
	
	
.section6 form#mailformpro dl dd p {
	font-size:0.8em;
}
.section6 form#mailformpro dl dd input {
	font-size:16px;
	line-height:1.2em;
	padding:5px;
}

.br640 {
	display: inline;
}

}

@media only screen and (max-width: 540px) {
	
}
	
@media only screen and (max-width: 480px) {

header nav ul {
	padding: 10px 0;
}
header nav ul li {
	margin: 0;
	width: calc(100% / 2);
	margin: 5px 0;
}
header nav ul li a,
header nav ul li a:link,
header nav ul li a:visited {
	font-size: 14px;
}
header nav .snav {
	top: -100px
}

/**section1**/
.section1 .section {
	padding: 30px 0;
}
.section1 h1 {
	font-size: 18px;
}
.section1 p {
	font-size: 14px;
}

/**section2**/
.section2 .section {
	padding: 30px 0 30px;
}
.section2 h1 {
	font-size: 24px;
}
.section2 p {
	font-size: 14px;
}
.section2 .img {
	margin: 0 -1% 30px;
}
.section2 .img img {
	width: calc(50% - 2%);
	margin: 0 1%;
}
.section2 dt,
.section2 dd {
	font-size: 13px;
}

/**section3**/
.section3 .section {
	padding: 30px 0 5px;
}
.section3 h1 {
	font-size: 24px;
}
.section3 p {
	font-size: 14px;
}
.section3 ul {
	margin: 0 auto 30px;
}
.section3 ul li {
	display: block;
	width: 100%;
	margin: 0 0 10px;
}
.section3 ul li:nth-child(2) img {
	width: calc((100% - 4%) / 3);
	margin-right: 2%;
	margin-bottom: 3px;
}
.section3 ul li:nth-child(n+3) img {
	width: calc((100% - 2%) / 2);
	margin-right: 2%;
}
	
/**section4**/
.section4 .section {
	padding: 30px 0 30px;
}
.section4 h1 {
	font-size: 24px;
}
.section4 p {
	font-size: 14px;
}
.section4 .img {
	margin: 0 -1% 30px;
}
.section4 .img img {
	width: calc(25% - 2%);
	margin: 0 1%;
}

/**section5**/
.section5 .section {
	padding: 30px 0 30px;
}
.section5 h1 {
	font-size: 24px;
}
.section5 p {
	font-size: 14px;
}

/**section6**/
.section6 .section {
	padding: 30px 0 30px;
}
.section6 h1 {
	font-size: 24px;
}
.section6 form#mailformpro dl dt {
	font-size:14px;
}

.br480 {
	display: inline;
}

}
	
@media only screen and (max-width: 360px) {

.br360 {
	display: inline;
}

}