@charset "UTF-8";
html{font-size:62.5%;}
* {margin: 0;padding: 0;box-sizing: border-box;}
img {border: none;vertical-align: bottom;line-height: 0;}
main{display: block;}
h1,h2,h3,h4,h5,h6{
	font-size: 100%;
	font-weight: normal;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
	/*font-family: "游明朝",YuMincho,"ヒラギノ明朝 Pro W3", Hiragino Mincho Pro,"メイリオ", Meiryo,serif;*/
}
h1,h1 a {font-size:26px;font-size:2.6rem;}
h2,h2 a {font-size:22px;font-size:2.2rem;}
h3,h3 a {font-size:20px;font-size:2.0rem;}
h4,h5 {font-size:18px;font-size:1.8rem;}
p,dl,a,ul,table,dt,dt a {font-size:15px;font-size:1.5rem;}
a {text-decoration: none;color: rgba(40,84,165,1);cursor: pointer;transition-duration: 0.4s;}
a:hover{color:rgba(0,0,0,1);text-decoration: none;}
ul,p,tr,td,table{margin:0;padding:0;color: #0f0f0f;}
p{line-height: 1.8;color: #0f0f0f;text-align: justify;text-justify: inter-ideograph;}
li,dd{list-style:none;margin: 0;padding: 0;color: #0f0f0f;}

.cf:after{content: "";clear: both;display: block;}
.no-border{border: 0px!important;margin-bottom: 0!important;}

span.ib{display: inline-block;}
.cell.is-empty {
	height: 0;
	padding-top: 0;
	padding-bottom: 0;
	margin-top: 0;
	margin-bottom: 0;
	border:0;
}

.attention{margin-left: 1em;text-indent: -1em;}
.attention:before{content: "※";}

.upper-1200,.upper-1024,.upper-767{
	display: block;
}
.under-1200,.under-1024,.under-767{
	display: none;
}
.flex-box{
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between; /* Safari */
	justify-content:         space-between;
}
.flex-box-column{
	-webkit-flex-direction: column; /* Safari */
	flex-direction:         column;
}
.flex-box-start{
	-webkit-justify-content: flex-start; /* Safari */
	justify-content:         flex-start;
}
.flex-box-end{
	-webkit-justify-content: flex-end; /* Safari */
	justify-content:         flex-end;
}
.flex-box-center{
	-webkit-justify-content: center; /* Safari */
	justify-content:         center;
}
.flex-align-center{
	-webkit-align-items: center; /* Safari */
	align-items:         center;
}
.flex-align-end{
	-webkit-align-items: flex-end; /* Safari */
	align-items:         flex-end;
}
.blue{
	color: rgba(40,84,165,1);
}
.max-img{width: 100%;height: auto;}

body{
	font-size:10px;
	font-size:1.0rem;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
	width:100%;
	line-height:1.6;
	/*background: rgba(0, 0, 0, 0) url("images/bg.png") repeat top center ;*/
	background-color: #fff;
}
div#container{
	width: 100%;
	margin: 0 auto;
}
#wrapper{
	margin: 0 auto;
	position: relative;
	padding: 0;
	width: 100%;
	/*background: rgba(0, 0, 0, 0) url("images/bg.png") repeat top center ;*/
}
/*-------------------------------------common-------------------------------------*/
section.common-section{
	width: 100%;
	margin: 0 auto 0;
	padding-top: 30px;
	background-color: #fff;
	z-index: 4;
	position: relative;
}
ul.common-list{
	margin: 10px 0 20px;
}
ul.common-list li{
	list-style-type: disc;
	list-style-position: outside;
	margin-left: 1em;
	margin-bottom: 8px;
}
h1.main-title{
	font-weight: bold;
	font-size:34px;
	font-size:3.4rem;
	line-height: 1.4;
	margin: 10px 0;
	color: rgba(40,84,165,1);
}
h2.common-title{
	font-weight: bold;
	font-size:24px;
	font-size:2.4rem;
	line-height: 1.4;
	margin: 10px 0;
	color: rgba(40,84,165,1);
}
/*--------------------------------------header-------------------------------------*/
header{
	position: relative;
}
header#top-header{
	width: auto;
	position: fixed;
	right: 40px;
	top:10px;
	z-index: 7;
}
header#top-header nav ul{

}
header#top-header nav ul li{
	text-align: right;
	margin-left: 40px;
}
header#top-header nav ul li a{
	letter-spacing: 0.4em;
	color: #fff;
	text-shadow: 1px 1px 1px rgba(0,0,0,.4);
}
header#top-header nav ul li a:hover{
	color: #0f0f0f;
}
/*------------------------------------------child----------------------------------*/
section.child-top-section{
	padding-top: 0px;
	margin-top: 0px;
	position: fixed;
	right: 0;
	left: 0;
	top: 0;
	height: 62px;
	z-index: 6;
	background-color: transparent;
}
section.child-top-section h1{
	margin: 0 0;
	padding: 0px 0 0;
	height: 62px;
	background-color: rgba(40,84,165,.8);
}
section.child-top-section h1 a{
	padding: 10px 40px 0;
	font-size:24px;
	font-size:2.4rem;
	color: #fff;
	font-weight: bolder;
	background-color: rgba(40,84,165,1);
	height: 100%;
	display: inline-block;
	letter-spacing: .2em;
}
section.child-photo-section{
	width: 100%;
	margin-top: 0px;
}
section.child-common-section{
	width: 95%;
	max-width: 1300px;
	margin: 60px auto 20px;
}
section.child-common-section h2{
	font-size:40px;
	font-size:4.0rem;
	margin-bottom: 0px;
}
p.company-explain{
	margin-bottom: 50px;
}
/*--------------------------------------instagram-----------------------------*/
div.insta-title-box{
	max-width: 1300px;
	width: 95%;
	margin: 40px auto;
}
div.insta-title-box p{
	font-weight: bold;
	color: rgba(40,84,165,1);
	font-size: 22px;
	font-size: 2.2rem;
}
div.insta-title-box figure{
	width: 35px;
	margin-left: 15px;
}
ul.insta-list{
	max-width: 1300px;
	width: 100%;
	margin: 40px auto;
	padding-top: 40px;
}
ul.insta-list li{
	width: 325px;
	height: 325px;
	padding: 20px;
}
ul.insta-list li > a{
	height: 100%;
	width: 100%;
	display: block;
}
/*-----------------------------------footer-----------------------------------*/
footer{
	width: 100%;
	padding: 30px 50px;
	background-color: rgba(40,84,165,1);
	position: relative;
	z-index: 4;
}
footer p,
footer h2{
	text-align: left;
	color: #fff;
	line-height: 2.0;
}
footer h2{
	margin: 0 auto 20px;
	width: 4%;
}
footer p.to-the-top{
	text-align: right;
}
footer p.to-the-top a{
	color: #fff;
}
footer p#copyrights{
	text-align: center;
	margin-top: 20px;
	color: #fff;
}
footer h1{
	margin: 0 auto;
	text-align: center;
}
footer h1 a{
	color: #fff;
	font-weight: normal;
	letter-spacing: 0.5em;
}
h1 a span.small-text{
	font-size:20px;
	font-size:2.0rem;
}
footer p.address-text{
	margin-bottom: 20px;
	font-weight: normal;
	text-align: center;
}
footer p.address-text a{
	color: #fff;
}
footer nav{
	margin: 20px auto;
}
footer nav ul li{
	margin: 20px;
}
footer nav ul li a{
	color: #fff;
	text-decoration: underline;
}
footer div.footer-divide div.footer-title-box{
	margin-right: 20px;
	width: 500px;
}
footer div.footer-divide  div.bannerandfb{
	margin-left: 20px;
	width: 500px;
}
footer div.footer-divide img.banners{
	max-width:500px;
	width: 100%;
	margin-top: 10px;
}

section#smartphone-menu{
	display: none;
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,.98);
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 2000;
	padding: 20px;
	overflow-y: scroll;
}
section#smartphone-menu #btn-close{
	position: absolute;
	right: 20px;
	top: 20px;
	cursor: pointer;
	transition-duration: 0.5s;
}
section#smartphone-menu #btn-close:hover{
	transform: rotate(-360deg);
	-webkit-transform: rotate(-360deg);
}
section#smartphone-menu h2{
	text-align: center;
	margin-bottom: 20px;
	margin-top: 50px;
	color: rgba(40,84,165,1);
}
section#smartphone-menu nav{
	margin-bottom: 10px;
	padding-bottom: 10px;
}
section#smartphone-menu nav h4{
	font-weight: bold;
}
section#smartphone-menu nav ul{
	width: 50%;
	margin: 0 auto;
}
section#smartphone-menu nav ul li{
	margin-top: 15px;
	padding:15px 0;
	border-bottom: 1px dotted rgba(0,170,255,1);
	text-align: center;
	font-weight: bold;
}
section#smartphone-menu nav ul li:first-child{

}
section.gmap-section{
	padding: 0;
}
div#gmap{
	width: 95%;
	max-width: 1300px;
	height: 600px;
	position: relative;
	z-index: 5;
	background-color: #fff;
	margin: 0 auto;
}
section.line-box{
	width: 160px;
	height: 160px;
	position: fixed;
	bottom: 20px;
	right: 50px;
	z-index: 100;
	opacity: 0;
	transition-duration: .5s;
}
#modal-content{
	width:30%;
	margin:0 auto ;
	background:#fff;
	z-index:110;
	position:fixed;
}
#modal-overlay{
	z-index:109;
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:120%;
	background-color:rgba(0,0,0,.75);
}
/*-----------------------------slide show----------------------------*/

ul#shisetu-image{
	width: 100%;
	padding-bottom: 1px;
	border-bottom: 1px solid rgba(84,19,47,1);
}
ul#shisetu-image-small{
	width: 100%;
	padding: 10px 0;
	border-bottom: 6px solid rgba(0,170,255,1);
	margin-bottom: 10px;
}
ul#shisetu-image-small li{
	padding: 0 20px;
}
ul#shisetu-image li{
	position: relative;
}
ul#shisetu-image .slick-slide:not(.slick-center){
	-webkit-filter: grayscale(80%);
	-moz-filter: grayscale(80%);
	-o-filter: grayscale(80%);
	-ms-filter: grayscale(80%);
	filter: grayscale(80%);
}

ul#shisetu-image li img,
ul#shisetu-image-small li img{
	border-left: 1px solid #fff;
}
li div.slide-explain{
	position: absolute;
	width: 100%;
	height: 100%;
	right: 0;
	left:0;
	top:0;
	bottom:0;
	z-index: 5;
	text-align: right;
	padding: 20px;
}
li div.slide-explain div.slide-text-box{
	-webkit-align-items: center; /* Safari */
	align-items:         center;
	height: 100%;
	width: 80%;
	margin: 0 auto;
}
li div.slide-explain article{
	text-align: center;
	width: 100%;
	position: relative;
}
li div.slide-explain article p{
	color: #fff;
	line-height: 1.8;
	padding-top: 20px;
	font-size:18px;
	font-size:1.8rem;
	margin: 0 auto 20px;
	width: 70%;
	max-width: 800px;
}
li div.slide-explain article p.link-more{
	padding: 2px 0;
}
li div.slide-explain article h2 a{
	color: #fff;
	line-height: 1.0;
	font-weight: bold;
	font-size:40px;
	font-size:4.0rem;
}
li div.slide-explain article h3{
	font-weight: bold;
	font-size:24px;
	font-size:2.4rem;
	color: #fff;
}
li div.slide-explain a:hover{
	box-shadow: 0px 0px 0px rgba(0,0,0,.6);
}
section.top-slide-show{
	position: relative;
}
section.top-slide-show .slick-next{
	right: 50px;
}
section.top-slide-show .slick-next:before{
	content: "";
}
section.top-slide-show .slick-prev{
	left: 50px;
}
section.top-slide-show .slick-prev:before{
	content: "";
}
button.slick-prev, button.slick-next {
	z-index:2;
}
.slick-prev, .slick-next {
	width:53px; /* 画像幅 */
	height:53px /* 画像高さ */
}

/*-----------------------------------table---------------------------------------*/

table.common-table a:link {
	color: #666;
	font-weight: bold;
	text-decoration:underline;
}
table.common-table a:visited {
	color: #999999;
	font-weight:bold;
	text-decoration:none;
}
table.common-table a:active,
table.common-table a:hover {
	color: rgba(0, 153, 68, 1);
	text-decoration:underline;
}
table.common-table {
	color:#666;
	font-size:15px;
	font-size:1.5rem;
	/*text-shadow: 1px 1px 0px #fff;*/
	background:#eaebec;
	/*border:#ccc 1px solid;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	border-radius:3px;*/

	/*-moz-box-shadow: 0 1px 2px #d1d1d1;
	-webkit-box-shadow: 0 1px 2px #d1d1d1;
	box-shadow: 0 1px 2px #d1d1d1;*/
	width: 100%;
	table-layout: fixed;
	word-break: break-all;
	margin: 10px 0 20px;
}
table.common-table caption{
	text-align: left;
}
table.common-table th {
	padding:10px;
	/*border-top:1px solid #fafafa;*/
	border-bottom:1px solid #e0e0e0;
	width: 150px;
	color: #fff;
	background: rgba(40,84,165,1);
	text-align: center;
	width: 30%;
	/*background: -webkit-gradient(linear, left top, left bottom, from(#ededed), to(#ebebeb));
	background: -moz-linear-gradient(top,  #ededed,  #ebebeb);*/
}
table.common-table th:first-child {
	text-align: center;
}
table.common-table tr:first-child th:first-child {
	/*-moz-border-radius-topleft:3px;
	-webkit-border-top-left-radius:3px;
	border-top-left-radius:3px;*/
}
table.common-table tr:first-child th:last-child {
	/*-moz-border-radius-topright:3px;
	-webkit-border-top-right-radius:3px;
	border-top-right-radius:3px;*/
}
table.common-table tr {
	text-align: right;
	padding-left:20px;
}
table.common-table td:first-child {
	text-align: left;
	padding-left:20px;
	border-left: 0;
}
table.common-table td {
	padding:10px;
	border-top: 1px solid #ffffff;
	border-bottom:1px solid #e0e0e0;
	border-left: 1px solid #e0e0e0;
	font-size:15px;
	font-size:1.5rem;

	background: #fafafa;
	/*background: -webkit-gradient(linear, left top, left bottom, from(#fbfbfb), to(#fafafa));
	background: -moz-linear-gradient(top,  #fbfbfb,  #fafafa);*/
	word-break: break-all;
}
table.common-table tr.even td {
	background: #f6f6f6;
	/*background: -webkit-gradient(linear, left top, left bottom, from(#f8f8f8), to(#f6f6f6));
	background: -moz-linear-gradient(top,  #f8f8f8,  #f6f6f6);*/
}
table.common-table tr:last-child td {
	border-bottom:0;
}
table.common-table tr:last-child td:first-child {
	/*-moz-border-radius-bottomleft:3px;
	-webkit-border-bottom-left-radius:3px;
	border-bottom-left-radius:3px;*/
}
table.common-table tr:last-child td:last-child {
	/*-moz-border-radius-bottomright:3px;
	-webkit-border-bottom-right-radius:3px;
	border-bottom-right-radius:3px;*/
}
table.common-table tr:hover td {
	background: #f2f2f2;
	background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#f0f0f0));
	background: -moz-linear-gradient(top,  #f2f2f2,  #f0f0f0);
}
table.common-table td p {
	color:#666;
}

/*-------------------------------1300px以下---------------------------------------------*/
@media screen and (max-width: 1300px) {
	ul.insta-list li{
		width: 33.33%;
		height: 33vw;
	}
}
/*-------------------------------1200px以下---------------------------------------------*/
@media screen and (max-width: 1200px) {
	.upper-1200{
		display: none;
	}
	.under-1200{
		display: block;
	}
}
/*--------------------------------1024x以下-----------------------------------------------------*/
@media screen and (max-width: 1024px) {
	.upper-1024{
		display: none;
	}
	.under-1024{
		display: block;
	}
}
/*--------------------------------1000x以下-----------------------------------------------------*/
@media screen and (max-width: 1000px) {
	footer div.footer-divide div.footer-title-box{
		margin-right: 0px;
		width: 100%;
		text-align: center;
	}
	footer div.footer-divide div.bannerandfb{
		margin-left: 0px;
		width: 100%;
		text-align: center;
	}
	footer div.footer-divide div.footer-title-box h1{
		text-align: center;
		margin-left: .5em;
	}
	footer p.address-text{
		text-align: center;
	}
	footer div.footer-divide div.footer-title-box ul{
		-webkit-justify-content: center; /* Safari */
		justify-content:         center;
	}
	.fb_iframe_widget{
		width: 100%!important;
	}
}
/*--------------------------------767x以下-----------------------------------------------------*/
@media screen and (max-width: 767px) {
	.upper-767{
		display: none;
	}
	.under-767{
		display: block;
	}
	footer div.footer-divide{
		-webkit-flex-direction: column-reverse; /* Safari */
		flex-direction:         column-reverse;
	}
	footer div.footer-divide div.footer-title-box{
		margin-top: 30px;
	}

}
/*--------------------------------650x以下-----------------------------------------------------*/
@media screen and (max-width: 650px) {
	table.common-table th,
	table.common-table td{
		width: 100%;
		display: inline-block;
		text-align: center;
	}
	header#top-header{
		right: 20px;
	}
	header#top-header nav ul li{
		margin-left: 20px;
	}
	footer h1 a{
		letter-spacing: 0;
		margin-left: 0;
	}
	footer ul.footer-menu-list li{
		width: 100%;
		text-align: center;
	}
	section.child-photo-section{
		margin-top: 62px;
	}
	section.child-top-section h1 a{
		padding: 10px 20px 0;
		font-size:18px;
		font-size:1.8rem;
	}
	ul.footer-banner-list li{
		width: 50%;
		margin-left: 0;
		margin-right: 0;
		padding: 0 5px;
		margin-bottom: 0px;
		margin-top: 10px;
	}
	ul.footer-banner-list li img{
		vertical-align: bottom;
	}
	section.line-box{
		width: 60px;
		height: 60px;
		bottom: 20px;
		right: 20px;
	}
	#modal-content{
		width: 80%;
	}
	ul.insta-list li{
		width: 50%;
		height: 50vw;
	}
}
/*--------------------------------480px以下-----------------------------------------------------*/
@media screen and (max-width: 480px) {

}
