* {
	margin: 0;
	padding: 0;
}

*::after,
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	font-family:"Mplus 1p";
	-webkit-text-size-adjust: 100%; /* スマホ横にしても文字拡大せず*/
	
}




#wrapper {
  width:100%;
  overflow:hidden;
}


img, abbr, acronym, fieldset {
border: 0;
vertical-align: bottom;
}

img{max-width: 100%;
	height: auto;
	
}


/* reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
q:before,q:after{content:'';}
object,embed{vertical-align:top;}
legend{display:none;}
h1,h2,h3,h4,h5,h6{font-size:100%;}
img,abbr,acronym,fieldset{border:0;}

th{width:20%;
padding:30px;
}

td{width:80%;
padding:30px;
}

#line{max-width:900px;
margin:0 auto;
padding:30px 0;
}

a{text-decoration: none;}



/*----------------------------------------------------------------------------------gnav----------*/


/* PC時の表示css*/


.inner {
	width: 980px;
	margin: 0 auto;
}
.inner:after {
	content: "";
	clear: both;
	display: block;
}

/* header */
#top-head {
	font-size: 14px;
	top: -100px;
	background-color:#fff;
	position: absolute;
	width: 	100%;
	height: 56px;
	margin: 100px auto 0px;
	padding: auto;
	line-height: 1;
	z-index: 999;
}
#top-head a,
#top-head {
	color: #000;
	text-decoration: none;
}
#top-head .inner {
	position: relative;
}

#top-head .logo {
	float: left;
	font-size: 36px;
}

#top-head .logo img{
	width: 120px;
	padding:10px 0px 0px ;
}

#top-head .logo p{
	display:none;}

#global-nav ul {
	list-style: none;
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 14px;
}

#global-nav ul i{
	font-size: 20px;
		margin:-4px 0 0px;

}

#global-nav ul li {
	float: left;
	position: relative;
	padding-bottom:12px;
}
#global-nav ul li a {
	padding: 0 14px;
}

/* Btn Hover */
#global-nav ul li:after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 3px;
	bottom: -20px;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}
#global-nav ul li:hover:after {
	background: #000;
	bottom: -5px;
}



/*----------------------------------------------------------------------------------下スクロール時----------*/
/* Fixed */
#top-head.fixed {
	margin-top: 0;
	top: 0;
	position: fixed;
	padding-top: 10px;
	height: 55px;
	background: #fff;
	background: rgba(0,0,0,0.7);

	transition: top 0.65s ease-in;
	-webkit-transition: top 0.65s ease-in;
	-moz-transition: top 0.65s ease-in;
}

#top-head.fixed .logo img{
width: 120px;
margin-top:-10px;
}



#top-head.fixed #global-nav ul li a {
	color: #fff;
	padding: 0px 15px ;
}

/* Fixed Btn Hover */
#top-head.fixed #global-nav ul li:after {
	bottom: -10px;
}
#top-head.fixed #global-nav ul li:hover:after {
	background: #fff;
	bottom: -5px;
}



/*----------------------------------------------------------------------------------ハンバーガー----------*/
/* Transition */
/*
#top-head,
#top-head .logo,
#global-nav ul li,
#global-nav ul li a {
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}
*/



/* Toggle Button */
#nav-toggle {
	display: none;
	position: absolute;
	right: 12px;
	top: 16px;
	width: 34px;
	height: 36px;
	cursor: pointer;
	z-index: 101;
}

#nav-toggle div {
	position: relative;
}
#nav-toggle span {
	display: block;
	position: absolute;
	height: 4px;
	width: 100%;
	background: #000;
	left: 0;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}

#nav-toggle span:nth-child(1) {
	top: 0px;
}

#nav-toggle span:nth-child(2) {
	top: 11px;
}

#nav-toggle span:nth-child(3) {
	top: 22px;
}


/*----------------------------------------------------------------------------------main----------*/



#main-soto{
width: 100%;
 }
 
 
#main-visual{
max-width:1400px;
margin:0px auto 0px;
background-position:0px 55px;
background-repeat: no-repeat;
    -webkit-background-size: contain;
    -moz-background-size: contain;
    -o-background-size: contain;
    background-size:contain;
}

#main-visual::before{
display:block;
content:"";
padding-top:38%;
}


#slide_space{max-width:1400px;
margin: 10px auto 0px;
}

#slide_space2{max-width:720px;
margin: 10px auto 100px;
} 

#slide_space2 img{
width:240px;
height:auto;}

/*----------------------------------------------------------------------------------article----------*/

article {line-height: 1.9;}
	

article h1{
	font-family: "Mplus 1p";
	font-weight:800;
	font-size: 38px;
	text-align: center;
	color:#ED1E79;
}



article h2{
	font-family: "Mplus 1p";
	line-height: 1.7;
	font-weight:700;
	font-size: 24px;
	text-align: center;
	color:#666;
}

article p{
font-family: "Mplus 1p";
	font-weight:300;
	line-height: 1.9;
	 color:#333;
}

article a{
font-family: "Mplus 1p";
	font-weight:300;
	line-height: 1.9;
	 text-decoration:none;
}


table{
font-family: "Mplus 1p";
	font-weight:300;
	line-height: 1.9;
	 color:#333;
}

/*----------------------------------------------------------------------------------greet----------*/


#greet{width:100%;
margin:-30px auto 0;
padding:60px 0 60px;
background:url(../images/bg_greet2.jpg) no-repeat center center;
background-size: contain;
} 
 
#greet h1{margin:0px auto 0;
color:#ED1E79;} 

#greet h2{color:#666;
margin:0px auto 20px;} 

#greet p
{max-width:600px;
 text-align: left;
 margin:0 auto;
 color:#333;}

  
 #greet h1{
line-height: 1.2;
padding:0 0 10px;} 


 /*----------------------------------------------------------------------------------greet2----------*/



#greet2{
padding:30px 0px 30px;

}

#greet2 p{max-width:600px;
 text-align: left;
 margin:20px auto 0;} 
 
 
#meidoru{max-width:640px;
margin:30px auto;
text-align:center}

#meidoru a{display:inline-block;} 
 
#meidoru img{
width:300px;
padding:10px 5px;} 



#greet .btn{	
max-width: 280px;
  margin: 20px auto 0px;
  padding: 11px 0px;
  border: 1px solid #fff;
  background: #29ABE2;
  color: #fff;
  text-align: center;
  text-decoration: none;
  line-height: 1;
  transition: .3s;
  /*角丸*/
-moz-border-radius:6px;
-webkit-border-radius:6px;
border-radius:6px;
behavior: url(PIE.htc);
}

#greet .btn:hover {
  border: 1px solid rgba(0,0,0,.1);
  background: rgba(0,0,0,.5); }


.link:hover {
  background: rgba(0,0,0,.3); }
  
 /*----------------------------------------------------------------------------------cam----------*/
 
 
  .cam_soto{
 margin:0px auto -30px;
 }
 
 
 .cam{
 max-width:720px;
 margin:40px auto 40px;
 display:flex;
    justify-content:space-around; /* 子要素をflexboxにより中央に配置する */
    flex-wrap:         wrap;
 }
 
 
.cam-naka{
padding:0 10px 0;
 }
 
.cam h2{
width:380px;
font-size:20px;
color:#fff;
background:#eabf8b;
padding:5px 0 5px;
margin:0px 0px 0px;
text-align: center;
}

.cam p{
width:380px;
text-align: left;
margin:10px 0 0;}

 .cam img{
width:300px;
padding:0 10px 0;}


.btn2{
  max-width: 280px;
  margin: 30px auto 0px;
  padding: 11px 0px;
  background:#FF7BAC;
  color: #fff;
  text-align: center;
  text-decoration: none;
  line-height: 1;
  transition: .3s;
  /*角丸*/
-moz-border-radius:6px;
-webkit-border-radius:6px;
border-radius:6px;
behavior: url(PIE.htc);
}





#kakure h2{
display:none;}




 /*----------------------------------------------------------------------------------merit----------*/
 .merit{
  max-width: 720px; 
 margin:0px auto 30px;
 padding:5px 20px ;
 border: solid 1px #333;
 -moz-border-radius:6px;
-webkit-border-radius:6px;
border-radius:6px;
behavior: url(PIE.htc);
}
 
  .merit h2{
border-bottom: solid 1px #333;
 padding:0px 0px 0px;}
 
 
 .merit h2 > span {
  position: relative;
  top: -100px;
  display: block;
}
 
   .merit p{
padding:10px;}


 /*----------------------------------------------------------------------------------jirei----------*/
 .jirei{
  max-width: 720px; 
 margin:0 auto 20px;
 padding:5px 20px ;
 border: solid 1px #333;
 -moz-border-radius:6px;
-webkit-border-radius:6px;
border-radius:6px;
behavior: url(PIE.htc);
}
 
  .jirei h2{
border-bottom: solid 1px #333;
 padding:0px 0px 0px;}
 
   .jirei p{
padding:10px;}

 /*----------------------------------------------------------------------------------greet3----------*/
#greet3{
width:100%;
margin:60px 0 0;
padding:40px 0px 60px;
background-color:#ED1E79;
}

#greet3 h1{
color:#fff;
}

#greet3 h2{
color:#FFFF00;
}


#greet3 .btn3{	
  width: 280px;
  margin: 20px 10px 0px;
  padding: 11px 0px;
  border: 1px solid #fff;
  background: ;
  color: #fff;
  text-align: center;
  text-decoration: none;
  line-height: 1;
  transition: .3s;
  /*角丸*/
-moz-border-radius:6px;
-webkit-border-radius:6px;
border-radius:6px;
behavior: url(PIE.htc);
}

#greet3 .btn3:hover {
  border: 1px solid rgba(0,0,0,.1);
  background: rgba(0,0,0,.5); }
  
  
#mokuteki{
 max-width:900px;
 margin:0 auto;
 display:flex;
    justify-content:center; /* 子要素をflexboxにより中央に配置する */
    flex-wrap:         wrap;}



 /*----------------------------------------------------------------------------------news----------*/

#news {
	width: 100%;
	padding: 40px 0px;
	margin: 0 auto;
}

#news h1 {
	margin: auto;
	padding: 0px;
	text-align: center;
}

.news {
	max-width: 800px;
	height: 180px;
	margin: 30px auto 20px;
	overflow: scroll;
}

.newstext {
	color: #333;
	max-width: 720px;
	height: 56px;
	font-size: 16px;
	text-align: left;
	border-bottom: 1px dotted #333;
	padding: 16px 0 0 16px;
	margin: 0 auto;
}


.opentime{ margin-top:10px;}

.link_map{ display:none;}


#gmap{
margin:70px auto 0px;
height:500px;
width:100％;
}


/*----------------------------------------------------------------------------------gaiyo----------*/
#gaiyo{width:100%;
margin:-30px auto 0;
padding:60px 0 60px;
} 
 
#gaiyo h1{margin:0px auto 0;
color:#ED1E79;} 

#gaiyo h2{color:#666;
margin:0px auto 20px;} 

#gaiyo p
{max-width:600px;
 text-align: left;
 margin:0 auto;
 color:#333;}
 
 
 /*----------------------------------------------------------------------------------gaiyo_table----------*/

#gaiyo table{
margin-right : auto;
margin-left : auto;
margin-top : 60px;
padding-bottom : 60px;
width:640px;
}

 

table.type04 {
    border-collapse: separate;
    border-spacing: 1px;
    line-height: 1.5;
}
table.type04 th {
    width: 150px;
    padding: 10px;
     text-align: center;
    font-weight: bold;
    vertical-align: center;
    color: #ED1E79;
    border-bottom: dashed 1px #333;
}
table.type04 td {
    padding: 10px;
     text-align: left;
    vertical-align: top;
    border-bottom: dashed 1px #333;
}


 /*----------------------------------------------------------------------------------service----------*/
 
#nagare{width:100%;
background:#f9f9f9;
text-align: center;
padding:60px 0;
margin:0 0 0px;}

#nagare img{
	margin: 30px 0 40px;
	width: 540px;
}


.service_back{
  background: -moz-linear-gradient(top, #ffe3f2, #fcffba, #fff,#fcffba, #ffe3f2);
  background: -webkit-linear-gradient(top, #ffe3f2, #fcffba, #fff,#fcffba, #ffe3f2);
  background: linear-gradient(to bottom, #ffe3f2, #fcffba, #fff,#fcffba, #ffe3f2);
  padding:60px 0 40px;
  }
 


 /*----------------------------------------------------------------------------------saiyo----------*/
#saiyo_gazo{
max-width:1200px;
margin:0 auto 60px;
} 

#saiyo_gazo img{
width:100%;
} 



/*----------------------------------------------------------------------------------access----------*/

#access{ background-color:#333;
background:url(../images/info_bg.jpg) no-repeat top center;
background-size: cover;
padding:40px 0px 60px;
	
}


#access h1{
	font-family: "Mplus 1p";
	font-weight:900;
	font-size: 40px;
	 text-align: center;
	color:white;
}


#access h2{margin:10px auto 0px;
　　　　　padding:0px;
	font-family: "Mplus 1p";
	font-weight:700;
	font-size: 20px;
	text-align: center;
	color:white;
}

#access h3{margin:20px auto 0px;
	font-family: "Mplus 1p";
	line-height: 1.2;
	font-weight:900;
	font-size: 30px;
	text-align: center;
	color:white;
}


#access p{padding:0px auto 0px;
font-family: "Mplus 1p";
	font-weight:300;
	line-height: 1.9;
	 color:white;
	 text-align: center;
}

#access a{
font-family: "Mplus 1p";
	font-weight:300;
	line-height: 1.9;
	 color:#000;
	 text-decoration:none;
}


#access img{
width:240px;
}


#access .btn4{	
max-width: 280px;
  margin: 20px auto 0px;
  padding: 11px 0px;
  border: 1px solid #fff;
  color: #fff;
  text-align: center;
  text-decoration: none;
  line-height: 1;
  transition: .3s;
  /*角丸*/
-moz-border-radius:6px;
-webkit-border-radius:6px;
border-radius:6px;
behavior: url(PIE.htc);
}


#access .btn4:hover {
  background: rgba(255,255,255,0.5); }


 /*----------------------------------------------------------------------------------footer---------*/
 
.footer {
	padding: 20px;
	text-align: center;
	color: #333;
	margin-bottom:180px;
}
.footer a {
	color: #333;
	text-decoration: none;
}
 

.last{width:100%;
  background:#FF7BAC;
	margin:0 auto;
	color: #fff;	
}

.last p{
text-align: center;
padding:4px;
font-size:12px;
}



 /*----------------------------------------------------------------------------------to_top---------*/
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
}
 
#pageTop a {
  display: block;
  z-index: 999;
  padding: 5px;
  border-radius: 30px;
  width: 35px;
  height: 35px;
  background-color: #9FD6D2;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}
 
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}




 /*----------------------------------------------------------------------------------tab---------*/


.tabs {  max-width: 900px;
  margin: 40px auto 0px;
  padding: 0px;
}
#tab-button {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}
#tab-button li {
  display: table-cell;
  width: 20%;
}
#tab-button li a {
  display: block;
  padding: .5em;
  background: #eee;
  border: 1px solid #ddd;
  text-align: center;
  color: #000;
  text-decoration: none;
}
#tab-button li:not(:first-child) a {
  border-left: none;
}
#tab-button li a:hover,
#tab-button .is-active a {
  border-bottom-color: transparent;
  background: #fff;
}
.tab-contents {
  padding: .5em 1em 1em;
  border: 1px solid #ddd;
}



.tab-button-outer {
  display: none;
}
.tab-contents {
  margin-top: 20px;
}

/*----------------------------------------------------------------------------------max-width: 640px---------*/

@media screen and (min-width: 640px) {
  .tab-button-outer {
    position: relative;
    z-index: 2;
    display: block;
  }
  .tab-select-outer {
    display: none;
  }
  .tab-contents {
    position: relative;
    top: -1px;
    margin-top: 0;
  }
}


 /*----------------------------------------------------------------------------------max-width: 980px---------*/
 
@media screen and (max-width: 980px)
{



	article {
		padding: 0px;
	}
	
	.inner {
		width: 100%;
		padding: 0 20px;
	}
	#global-nav ul li a {
		padding: 0 15px;
	}
	#top-head.fixed #global-nav ul li a {
		padding: 0 15px;
	}
	



/* RESPONSIVE 設定
------------------------------------------------------------*/

@media only screen and (min-width: 1200px){
	.inner2{
		width: 1024px;
		padding-bottom: 120px;
	}
	section h2{
		padding: 0px 0 0px;
	}
	.txt h2{
		padding: 0 0 0px !important;
	}
}

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

	
	/* SEC03 SERVICE MESSAGE STORY
	-----------------*/
	.col3{
		text-align: center;
	}

	.col3 li{
		display: inline-block;
		width: 30%;
		padding: 0 1.5%;
		margin-bottom: 0;
		vertical-align: top;
		text-align: left;
	}

}






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

	.col3 li{
		margin: 0 auto;
		display: block;
	max-width: 288px;
	}
}


.inner2{
		padding-bottom: 20px;
	}

}
