@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
   ルステル広告
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup, header_rusu,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, header_rusu, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1;
}

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?zq31z");
  src: url("../fonts/icomoon.eot?zq31z#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?zq31z") format("truetype"), url("../fonts/icomoon.woff?zq31z") format("woff"), url("../fonts/icomoon.svg?zq31z#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }


.pcon{display: block!important;}
.spon{display: none!important;}



/* -----------------------------------------
  common 
-----------------------------------------*/
html {
  font-size: 62.5%; }

body {
  color: #333333;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6;
  text-align: center;
  font-feature-settings : "palt";
	background:#fff;
}

a {
  text-decoration: none; }

a:hover {
  opacity: 0.7; }
.textcenter{
  text-align: -webkit-center;
  text-align: -moz-center;
  text-align: center;
}


.clearfix::after{
content:"";
display:block;
clear:both;
}

.alignright {
  float: right; }

.aligncenter {
  display: block;
  margin: auto; }

.alignleft {
  float: left; }

.red {
  color: #d80000; }

.bold {
  font-weight: bold; }



.cmn_w {
  margin: 0 auto;
  width: 700px;
	}
	

.pdn30 {
  padding: 30px 0; }

.mgnB45 {
  margin-bottom: 45px; }

.en {
  font-family: '小塚ゴシック Pro L','Kozuka Gothic Pro Light',sans-serif; }

.bg_gray {
  background-color: #f0f5f8;
	}

.lh0{line-height:0;}


#header_rusu {
	width:100%;
	margin: 0 auto;
	/*background-color:#068FCD;*/
	text-align:left;
	/*position: fixed;
	height: 200px;*/
}

#header_rusu h1{
	text-align:left;
	color:#fff;
	padding:5px 0;
	/*background-color:#377CB7;*/
}

.inner{
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}

.fixed{
	position:fixed;
	width:100%;
	height:200px;
	top:0px;
	/*z-index:1000000;*/
	z-index:100;
}


.logo{
	width:100%;
	margin: 0 auto;
	background:#FFF;
}

#header_rusu h2 img{
	width:100%;
	max-width: 305px;
	float:left;
	padding-top:40px;
}

#header_rusu .headinfo{
	float:right;
	max-width: 400px;
	width: 100%;
	margin:20px auto 0;
}


.tel img{
	width:100%;
	max-width: 400px;
}

.headinfo ul{margin-bottom: 5px;}
.headinfo ul li.contact{
	width: 100%;
	max-width: 196px;
	float: left;
}

.headinfo ul li.web{
	width: 100%;
	max-width: 196px;
	float: right;
}


#gnav {
	width:100%;
	height: 65px;
	/*background: #068FCD;*/
	padding: 10px 0;
	background-image: url(../img/gnav_bg.jpg);
	background-repeat: repeat-x;
}

#gnav ul.navi li{
	float: left;
	border-left:1px solid #FFF;
	box-sizing: border-box;
	width: 120px;
	height: 65px;
}
#gnav ul.navi li img{
	width: 100%;
	max-width: 120px;
}

#gnav ul.navi li:last-child{border-right:1px solid #FFF;}
#gnav ul.navi li a{display: block;}


#mv {
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
	padding-top:122px;
}

#mv p {
	color:red;
}


#sec01 {
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
	background: #E9F6FB;
	padding: 0 0 20px;
}

#sec01 img{
	width:100%;
	max-width: 980px;
	margin: 0 auto;
}

#sec02 {
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 0 40px;
}


#sec02 .inner img{
	width:100%;
	margin: 40px auto 0;
}


#sec03{
	width:100%;
	max-width: 1280px;
	margin: 0 auto 20px;
}

#sec03 .inner img{
	width:100%;
	margin: 0 auto;
}

#sec04{
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
	background: #4FC2F1;
	padding: 30px 0;
}


#sec04 h3 img{
	width:100%;
	max-width: 460px;
	margin: 0 auto;
}

#sec05{
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 40px 0;
}


#sec06{
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
	background: #E9F6FB;
	padding: 40px 0 0;
	}


#sec06 h3 img{
	width:100%;
	max-width: 290px;
	margin: 0 auto;
}

#sec07 {
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
}


#sec08 {
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
	background-image: url("../img/sec08_bg.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	/*background-size:contain;*/
	padding: 0 0 30px;
}

#sec09 {
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 50px 0 100px;
}

#sec09 h3 img{
	width:100%;
	max-width: 210px;
	margin: 0 auto;
}

#sec09 p.home_btn{
	margin:50px auto 0;
	text-align: center;
}


#sec09 p.home_btn img{
	width:100%;
	max-width: 380px;
	margin: 0 auto;
}

#sec09 p.gmap{
	margin:50px auto 0;
	text-align: center;
}


#sec10 {
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0;
	background: #EAF9FD;
}

.bg_img{
	background-image: url("../img/sec10_bg.png");
	background-position: right top;
	background-repeat: no-repeat;
	background-size:auto 100%;
	padding: 30px 0 30px;
}

p.telnum{
	width:100%;
	max-width: 780px;
	margin: 0 auto 20px;
}

p.txt{
	width:100%;
	max-width: 630px;
	margin: 0 auto;
}

#sec10 ul.btn{
	margin:20px auto 0;
	width: 100%;
	max-width: 790px;
}

#sec10 ul.btn li.contact{
	float: left;
	width: 100%;
	max-width: 380px;
	text-align: left;
}

#sec10 ul.btn li.web{
	float: right;
	width: 100%;
	max-width: 380px;
	text-align: right;
}

#sec10 ul.btn li.contact img,
#sec10 ul.btn li.web img{
	max-width: 380px;
}



#sec03 h3,
#sec04 h3,
#sec05 h3,
#sec06 h3,
#sec07 h3,
#sec09 h3{
	margin-bottom: 40px;
}


#footer {
	width:100%;
	margin: 0 auto;
	background:#004594;
}
	
#footer p{
	color:#FFF;
	font-size:14px;
	padding:5px 0;
}

.formtxt01{
	padding-top: 300px;
}




/*#nav_toggle{
	display: none;
}
*/
/* -----------------------------------------
  middle
-----------------------------------------*/
/*@media screen and (max-width:1024px) {*/

@media only screen and (min-width: 641px) and (max-width: 959px) {

#header_rusu{height: 197px;}

#header_rusu h2 img {
    width: 100%;
	max-width: 300px;
    padding: 20px 0 20px;
    text-align: center;
    margin: 0 auto;
    display: block;
	/*float: none;*/
}
	
#header_rusu .headinfo{
	max-width: 350px;
	margin:10px 0 0;
}

.headinfo ul li.contact{
	max-width: 170px;
}

.headinfo ul li.web{
	max-width: 170px;
}

#gnav{height: auto;padding:5px 0;}
#gnav ul.navi li{
	width: 12.5%;
	height: auto;
}
#gnav .inner{padding:0;} 
#gnav ul.navi li img {width: 100%;}
#gnav ul.navi li:first-child{border-left: none;}
#gnav ul.navi li:last-child{border-right: none;}
	
#mv {
	padding-top:165px;
}

#sec01{
	padding: 0 10px 30px;
	box-sizing: border-box;
}

	
#sec02{
	padding: 0 0 30px;
	box-sizing: border-box;
}
	
#sec03{
	padding: 0 0 30px;
	box-sizing: border-box;
	margin: 0;
}

#sec03 h3,
#sec04 h3{
	margin-bottom: 20px;
}

	
#sec04{
	padding: 30px 0 30px;
	box-sizing: border-box;
}
	
#sec05{
	padding: 30px 0 30px;
	box-sizing: border-box;
}
	
#sec06{
	padding: 30px 0 0;
	box-sizing: border-box;
}

	
	
#sec07{
	padding: 0;
	box-sizing: border-box;
}

#sec08{
	padding: 0 0 30px;
	box-sizing: border-box;
	/*background-size: contain;*/
}
	
#sec09{
	padding: 30px 0 50px;
	box-sizing: border-box;
	/*background-size: contain;*/
}

	
.inner{
padding: 0 10px;
box-sizing: border-box;
}


#sec10 {
	width:100%;
}

.bg_img{
	/*background-image: url("../img/sec10_bg.png");
	background-position: right top;
	background-repeat: no-repeat;
	background-size:auto 100%;*/
	padding:30px 0 30px;
	background: none;
}

p.telnum{
	padding: 0 10px;
	box-sizing: border-box;
}

p.txt{
	padding: 0 10px;
	box-sizing: border-box;
}

#sec10 ul.btn{
	width: 100%;
	padding: 0 10px;
	box-sizing: border-box;
}

#sec10 ul.btn li.contact{
	max-width: 49%;
}

#sec10 ul.btn li.web{
	max-width: 49%;
}

#sec10 ul.btn li.contact img,
#sec10 ul.btn li.web img{
	max-width: 380px;
}



}





/* -----------------------------------------
  SP
-----------------------------------------*/
@media screen and (max-width: 640px) {
  * {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; 
		}

body {
	font-size: 12px;
	font-size: 1.2rem;
	}

 img {
    max-width: 100%;
    height: auto;
	}
  .spon {display: block!important;}
  .pcon {display: none!important; }


.fixed{
	/*position: static;*/
	height:auto;
}

#header_rusu {height: auto;}
#header_rusu h1{
	text-align:center;
	font-size: 9px;
	padding: 4px 0;
}

.inner{
	width: 100%;
	margin: 0 auto;
	padding:0 10px;
	box-sizing:border-box;
}

.logo{
	width:100%;
	margin: 0 auto;
	padding:10px 0 10px;
}

#header_rusu h2,.tel{text-align:center;line-height: 0;}

#header_rusu h2 img{
	width:100%;
	/*max-width: 250px;*/
	max-width: 300px;
	margin:0 auto;
	float:none;
	padding-top: 0;
}


#gnav{
background-image:none;
background:#FFF;
border-top:none;
border-bottom:none;
height: auto;
padding: 0;
}
	
#gnav ul.spnavi{
	border-top:1px solid #FFF;
	border-bottom:1px solid #FFF;
	border-left:1px solid #FFF;
	box-sizing: border-box;
	padding: 0;
}
	
#gnav ul.spnavi li{
	float: left;
	box-sizing: border-box;
	width: 25%;
	height: auto;
	border-right:1px solid #FFF;
	line-height: 0;
	padding: 0;
}

#gnav ul.spnavi2{
	border-bottom:none;
	border-left:1px solid #FFF;
	box-sizing: border-box;
	padding: 0;
}
	
#gnav ul.spnavi2 li{
	float: left;
	box-sizing: border-box;
	width: 25%;
	height: auto;
	border-right:1px solid #FFF;
	line-height: 0;
	padding: 0;
}

#gnav ul.spnavi2 li a{display: block;}

#gnav ul.spnavi li:first-child{/*border-left:0.5px solid #FFF;*/box-sizing: border-box;}
#gnav ul.spnavi2 li:first-child{/*border-left:0.5px solid #FFF;*/box-sizing: border-box;}

.tel img{
	width:100%;
	max-width: 288px;
	float:none;
	margin:0 auto;
}

#mv {
	padding-top:83px;
}

#mv p {
	color:red;
}



#sec01{
	width:100%;
	margin:0 auto;
	padding: 20px 0;
	box-sizing: border-box;
}

#sec02{
	padding: 0 0 20px;
	box-sizing: border-box;
}
	

#sec02 .inner img{
	margin: 20px auto 0;
}

#sec03{
	padding: 0;
	box-sizing: border-box;
	margin: 0 auto;
}

#sec03 h3{
	margin: 0 auto;
}

#sec03 .inner img{
	margin: 0 auto 20px;
}

#sec04{
	padding: 20px 0;
	box-sizing: border-box;
	margin: 0 auto;
}

#sec05{
	padding: 0;
	box-sizing: border-box;
	margin: 0 auto;
}
#sec05 h3,
#sec06 h3,
#sec09 h3
{margin:0 auto;}

#sec05 img{margin:0 auto 20px;}

#sec04 h3,
#sec07 h3{
	margin-bottom: 20px;
}

#sec06{
	width:100%;
	margin:0 auto;
	padding: 20px 0;
}
	
#sec06 h3 img{
	width:100%;
	max-width: 290px;
	margin: 0 auto 20px;
}

#sec07{
	width:100%;
	margin:0 auto;
	padding:0;
	background: #E9F6FB;
}

#sec08{
	width:100%;
	margin:0 auto;
	padding: 20px 0 0;
	background: none;
}
	
#sec08 h3 img{
	width:100%;
	max-width: 154px;
	margin: 0 auto 40px;
}

#sec09{
	width:100%;
	margin:0 auto;
	padding: 20px 0;
	background: none;
}

#sec09 h3 img{
	width:100%;
	max-width: 207px;
	margin: 0 auto 20px;
}

#sec09 p.home_btn{
	margin:20px auto 0;
	text-align: center;
}

#sec09 p.gmap{
	margin:20px auto 0;
	text-align: center;
}

#sec10{
	width:100%;
	margin:0 auto;
	padding: 0 0 30px;
	background: #EAF9FD;
	
}

p.telnum{
	width:100%;
	margin: 20px auto;
}

p.txt{
	width:100%;
	max-width: 630px;
	margin: 0 auto;
}
	
#sec10 ul.btn{
	margin:20px auto 0;
	width: 100%;
}

#sec10 ul.btn li.contact{
	float: none;
	width: 100%;
	text-align: center;
	margin-bottom: 3px;
}

#sec10 ul.btn li.web{
	float: none;
	width: 100%;
	text-align: center;
}

#sec10 ul.btn li.contact img,
#sec10 ul.btn li.web img{
	max-width: 380px;
}


#footer {
	padding-bottom:68px;
}
	
#footer p{
	font-size: 12px;
	color: #fff;
}

.arrow{
	position: fixed;
	bottom: 100px;
	right: 10px;
}



/*固定ボタンSP*/
ul.fixbutton{
	text-align: -webkit-center;
	text-align: center;position:
	fixed;bottom: 0;
	width: 100%;
	height:auto;
	padding: 0px 0px;
	z-index: 99999999;
}

ul.fixbutton li{
	width: 33.3%;
	padding:3px 10px 3px;
	float:left;
	box-sizing:border-box;
}

ul.fixbutton li.ftime{
	text-align: center;
	padding: 3px 0;
	color: #FFF;
	background-color: rgba(0,92,199,0.9);
	width: 100%;
	float: none;
	font-size: 12px;
}
	
ul.fixbutton li a{display: block;}

ul.fixbutton li.fcontact{
	background: #068FCD;
	line-height: 0;
	border-right: 1px solid #FFF;
	box-sizing: border-box;
}

ul.fixbutton li.fweb{
	background: #068FCD;
	line-height: 0;
	border-right: 1px solid #FFF;
	box-sizing: border-box;
}

ul.fixbutton li.ftex{
	background: #068FCD;
	line-height: 0;
}

ul.fixbutton li img{
	max-width: 80px;
	width: 100%;
}

.fixbutton .span_4 {width: 25%;float: left;border-right: 1px solid #FFF;}
.fixbutton .span_4:last-child{border-right:none;}

}

/*広告用モーダル*/
.popup {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: .6s;
}
.popup.is-show {
  opacity: 1;
  visibility: visible;
}
.popup-inner {
  position: absolute;
  overflow: auto;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  width: 75%;
  height: 87%;
  max-width: 1280px;
  /*padding: 50px;*/
  background-color: #fff;
  z-index: 2;
}
.popup-inner img {
  width: 100%;
}
.close-btn {
  position: absolute;
  right: 0;
  top: 0;
  /*width: 50px;*/
  height: 50px;
  line-height: 50px;
  text-align: center;
  cursor: pointer;
  z-index:200;
}
.close-btn i {
  font-size: 20px;
  color: #333;
}
.black-background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,.8);
  z-index: 1;
  cursor: pointer;
}