@charset "UTF-8";

html {
	font-size:10px;
	
	font-family: source-han-sans-japanese, sans-serif;
	
	/*
		font-family: source-han-serif-japanese, serif;
		font-weight: 700;
		font-style: normal;	
	*/
	
	color:#333;
}
sup{
	vertical-align: super;
	font-size:0.7em;
}

.fM{
	font-family: source-han-serif-japanese, serif;
}
h1,h2,h3,h4,h5,h6{
	font-family: source-han-serif-japanese, serif;
}

body{
	text-align:center;
	min-width:960px;
	min-height:100vh;
				
}

a{			color:#111;	}
a:hover{	color:#000;	}


hr{
	margin:5em 8% 7em;
	height:4px;
	background-color:#CCC;
}

strong{
	color:#001A7A;
	font-size:1.1em;
}


/*// クラス設定 ///////////////////////////////*/
.autoWrap{
	position:relative;	
	margin-left: auto;
	margin-right: auto;
	width:960px;
	min-width:960px;
	text-align:left;
}


.Fl{	float:left;	}
.Fr{	float:right;	}

.lT{	text-align:left;	}
.cT{	text-align:center;	}
.rT{	text-align:right;	}

.tV{	vertical-align : top;	}
.mV{	vertical-align : middle;	}
.uV{	vertical-align : unser;	}

.mTl{	margin-top:8em;	}
.mTw{	margin-top:4em;	}
.mT{	margin-top:2em;	}
.mTs{	margin-top:0.5em;	}

.fSs{	font-size: 0.8em;	}
.fSm{	font-size: 1rem;	}
.fSl{	font-size: 1.2em;	}
.fSll{	font-size: 2em;	}

.lH10{	line-height: 1;	}
.lH12{	line-height: 1.25;	}
.lH15{	line-height: 1.5;	}
.lH17{	line-height: 1.75;	}
.lH20{	line-height: 2;	}

.Ma1{	margin-left:1px;	margin-right:1px;	}

.fCo{	color:#E83A29;	}
.fCbl{	color:#2A90D9;	}
.fCr{	color:#900;	}

._sp{	display:none;	}
.in1{	text-indent:-1em; padding-left :1em;}

a._bl{
	color:#4486CF;
	text-decoration: underline;
}
/*-------------------
	header
---------------------*/
#header{
	position: fixed;
	background-color:#FFF;
	color:#FFF;
	font-size:1.4em;
	padding:16px 0;
	width:100%;
	z-index:1000;
}


@media print {
	#header{
		position: absolute;
	}
}

#menuBox{
	position:relative;

}

#headerMenu{
	position: absolute;
	right:0;
	top:-48px;
	display:flex;
}
#headerMenu li{
	padding: 0 1em;
}
#headerMenu li a._tel {
	display:block;
	padding-left:28px;
	background:url("../images/style/htel.png") no-repeat left 60%;
	font-size:2.2em;
	font-weight:bold;
	cursor:default;
	color:#001B4C;
	
}
#headerMenu li a._iq {
	display:inline-block;
	padding: 0.6em 1.5em;
	background:#001B4C;
	color:#FFF;
	font-size:1.1em;
	
}


#MekkiMenu{
	background-color:#001B4C;
	color:#FFF;
	position: absolute;
	right:0;
	width:500px;
}
#MekkiMenu a{	color:#FFF;	}
#MekkiMenu a:hover{		color:#FF6;	}

 


.w100{	width:100%;	}


.dot{
	background:url("../images/style/dot01.jpg") no-repeat 50% 80% ;
}
#headerMenu2{
	display:flex;
	justify-content: space-between;
	padding:0.8em 0;
	font-size:1.1em;
}
#headerMenu2 li{
	border-right:1px solid #FFF;
	width:100%;
}
#headerMenu2 li._l1{	flex: 4;	}
#headerMenu2 li._l2{	flex: 4;	}
#headerMenu2 li._l3{	flex: 5;	}
#headerMenu2 li._l4{	flex: 5;	}

#headerMenu2 li:last-child{
	border-right:none;
}

#headerMenu2 a{
	display:block;
	text-align:center;
	padding:0.2em 0;
}


.txt01{
	font-size:14px;
	color:#333;
	line-height:1.8;
	padding:0.8em;
}

.txt02{
	font-size:18px;	
	color:#333;
	line-height:2;
	padding:0.8em;
}
.txt03{
	font-size:24px;	
	color:#333;
	line-height:1.6;
	padding:0.4em 1.5em;
}


.bananaBack{
	background-repeat: no-repeat ;
	background-position: 50% 50% ;
	background-image:url("../images/index/istockphoto-537804872-1024x1024.jpg");
	background-size:cover;
	padding:16px;	
}

.bananaBack div{
	background-color: rgba(255,255,255,0.8);
	padding:12px;
	text-align:center;
	
}


.split2{
	width:50%;
}

.split3{
	width:33.333%;
}


.split4{
	display:flex;
}

.split4>*{
	width:23%;
	margin-left:1%;
	margin-right:1%;
}


ul{	list-style:none;	}

ul.ul01{	margin-left:1em;	}
ul.ul01 li{
	
	margin-left:1em;
	text-indent:-1em;
	line-height:1.2;
	margin-bottom:0.5em;
}
ul.ul01 li::before{
	content:"・";
}





/*----------
	メニュー
	-------------*/
#menuBtn{
	display:none;
}
	
.burger-btn{
  display: block;      
  width: 39px;      
  height: 39px;      
  position: relative;      
  z-index: 30000;
  border:none;    
}    
.bar{      
  width: 30px;      
  height: 1px;        
  display: block;      
  position: absolute;      
  left: 50%;      
  transform: translateX(-50%);      
  background-color: #000;    
}    
.bar_top{   
  top: 10px;
}
.bar_mid{    
  top: 50%;
  transform: translate(-50%,-50%);
}
.bar_bottom{
  bottom: 10px;
}
.burger-btn.close .bar_top{      
  transform: translate(-50%,10px) rotate(45deg);      
  transition: transform .3s;    
}    
.burger-btn.close .bar_mid{      
  opacity: 0;       
  transition: opacity .3s;    
}    
.burger-btn.close .bar_bottom{      
transform: translate(-50%,-8px) rotate(-45deg);      
transition: transform .3s;    
}


.burger-btn.close .bar{      
  background-color: #FFF;    
}  
.header-nav{        
  width: 100%;        
  height: 100%;        
  background-color:#1B1310;        
  z-index: 2;      
}     
.header-nav.nav-list{        
  display: block;        
  position: absolute;        
  top: 50%;        
  left: 50%;        
  transform: translate(-50%,-50%);        
  text-align: center;      
}      
.header-nav.nav-item{        
  margin-right: 0;        
  margin-bottom: 40px;      
}

body.noscroll{
  overflow: hidden;
}

/*----------
	コンテンツ
	-------------*/
#contentsBox{
	padding-top:96px;
	font-size:1.6em;
	padding-bottom:5em;
}


/*----------
	フッター
	-------------*/
#footer ._bl{
	background-color:#00267C;
	color:#FFF;
	font-size:2em;
	line-height:1.5;
	overflow:hidden;
}

#footer ._bl ._fpad{		padding:0.6em;	}
#footer ._bl a{		color:#FFF; }
	
#footer ._bl h1{
	font-size:2em;
	padding: 0.2em 0 0.2em;
}

#footer ._bl hr{
	margin:0.5em 0 1.2em;
	height:4px;
	width:4.5em;
	background-color:#FFF;
	text-align:left;
}


#footer ._tel{
	margin-top:1.2em;
	margin-bottom:0.8em;
	padding-left:0.8em;
}
#footer ._tel p{
	font-size:0.7em;
}
#footer ._tel a{
	display:inline-block;
	background:url("../images/style/ftel.png") no-repeat left center;
	padding-left:48px;
	font-size:1.8em;
	font-weight:bold;
	cursor:default;
	z-index:10;
}

#footer ._inq {
	position:absolute;
	bottom:1.5em;
	right:1.5em;
}
#footer ._inq a{
	display:inline-block;
	padding:0.8em 1.6em;
	border:4px solid #FFF;
	font-size:1.6em;
	line-height:1;
	z-index:10;
}

#footer ._inq a:hover{
	color:#FF6;
	border-color: #FF6;
	background-color:#FFFFFF33;
	
}



#footer ._bl .autoWrap::before{
	content:"";
	width:586px;
	height:321px;
	background:url("../images/style/fback.png") no-repeat 0 0;
	position:absolute;
	bottom:-80px;
	right:-40px;
	z-index:0;
	
}

#footer ._bw {
	padding:3em 0 2em;
}

#footer ._bw ._lB{
	width:36%;
	padding: 0 2.2%;
	text-align:center;
	float:left;
	
}

#footer ._bw #map{
	width: 57.4%;
	padding: 274px 2.2% 0 0;
	float:right;
	position: relative;
	overflow: hidden;
}

#footer ._bw #map iframe{
	position: absolute;
	top: -150px;
	left: 0;
	width: 100%;
	height: calc(100% + 150px + 150px);
}



#footer ._bw h2{
/*	border-top:2px solid #222;
	border-bottom:1px solid #222;*/
	font-size:3.6em;
	padding:0.4em 0 0.5em;
	color:#000;
	font-family: source-han-sans-japanese, sans-serif;

}

#footer address{
	font-style:normal;
	font-size:1.6em;
/*	border-bottom:2px solid #222;*/
	padding:0.4em 0;
}
#footer .isoBox{
	margin-top:2em;
	font-size:1.2em;
	line-height:2;
	color:#707070;
}

#footer .isoBox img{
	width: 256px;
}



@media screen and (max-width: 960px){
	
	body{
		min-width:auto;
		width:100%;
	}
	.autoWrap{
		margin-left:2%;
		margin-right:2%;
		width:96%;
		min-width:96%;
	}
	#headerMenu li a._tel {
		font-size:3.2vw;
		background:none;
		
	}
	#headerMenu li a._iq {
		font-size:1.6vw;
	}
	
	#footer ._inq {
		bottom:2.5em;
	}
	#footer ._inq a{
		font-size:3vw;
	}
	#headerMenu li{
		padding: 0 0.5em;
	}
	
	#footer ._bw h2{			font-size:3.6vw;		}
	#footer ._bw address{		font-size:1.6vw;		}
}
@media screen and (max-width: 750px){
	
	#menuBtn{
		display:inline-block;
		position:absolute;
		top:-6px; right:0px;
	}
	#menuBox{
		position: fixed;
		opacity:0;   
		transform: translateX(100%);      
		transition: .3s;      
		font-size:3.2vw;
		width: 100vw;      
		height: 100vh;      
		top: 0;      
		left: 0;
		background-color:#001B4C;  
		background-color:#001B4CCC;  
		color:#FFF; 
		z-index: 10000;/*キービジュアルと.btn_triggerとの重なりの前後関係を調整*/     
	}

	#menuBox.slide-in{      
		opacity:1;   
		transform: translateX(0);      
		transition: .3s;     
	}
	
	#header h1{
		padding-right:48px;
	}

	

	#MekkiMenu {
	    position: static;
	    display: block;
	    padding: 0;
	    width: auto;
	    margin: 60px 1em 0;
	    border: 1px solid #FFF;
	    border-bottom: none;
	    background-color: transparent;
	    color: #FFF;
	}
	
	#headerMenu2{
		display:block;
		padding:0;
	}
	#headerMenu2 li{
		border-right:none;
		border-bottom:1px dotted #FFF;
	}
	
	#headerMenu2 li:last-child{
	}
	
	#headerMenu2 a{
		text-align:left;
		padding:0.8em 0.8em;
	}
#headerMenu{
	position: relative;      
	right:auto;
	top:auto;
	display:block;
    margin: 0 1em 0;
    border: 1px solid #FFF;
    border-top: none;
    background-color: transparent;
    color: #FFF;

}
#headerMenu li{
	padding: 0;
}
#headerMenu li a._tel {
	position: absolute;      
	display:block;
	padding-left:48px;
	background:url("../images/style/ftel.png") no-repeat left center;
	font-size:1.5em;
	color:#FFF;
	bottom:-2em;
	right:0;
	
}
#headerMenu li a._iq {
	display:block;
	text-align:left;
	padding:0.8em 0.8em;
    background-color: transparent;
	font-weight:normal;
	font-size:1em;
	
}
	
	._conBox p {
	    font-size:2.4vw;
	}
}



@media screen and (max-width: 580px){
	#header{		font-size:1.4vw;		}

	#menuBox{
		font-size:4vw;
	}
	#MekkiMenu ._opmenu a{
		display:block;
		padding:0.8em 0.2em 0.8em 2em;
	}



	#footer ._bl{
		font-size:3.2vw;
	}
	#footer ._inq {
		position:relative;
		text-align:center;
		margin:1em;
		top:0;
		left:0;
	}
	#footer ._inq a{
		font-size:4vw;
	
	}
	#footer .autoWrap::before{
		zoom:0.65;		
	}
	#footer ._bw ._lB{
		width:95.6%;
		float:none;
		
	}
	
	#footer ._bw #map{
		width: 95.6%;
		padding: 274px 2.2% 0;
		float:none;
	}



	#footer ._bw h2{			font-size:7.8vw;		}
	#footer ._bw address{		font-size:3.4vw;		}
	
	._conBox p {
	    font-size:3.2vw;
	}

	._pc{	display:none;	}
	._sp{	display:block;	}
	
	.Fl{	float:none;	}
	.Fr{	float:none;	}

	.txt01{			font-size:12px;		}
	.txt02{			font-size:14px;		}
	.txt03{			font-size:3.2vw;		}
	.split2{
		width:100%;
		float:none;
	}
	.split3{
		width:100%;
		float:none;
	}
	
}