@charset "utf-8";


@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');
/* CSS Document 

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@400;700&display=swap');


/*------------------------------------------------------------------------------------------------------------------
　base style
-------------------------------------------------------------------------------------------------------------------*/
* {
	-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}



body{
	color:#585656;
	font-size:18px;
	margin:0;
	height:100%;
	position:relative;
	
	font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Noto Sans JP","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO","メイリオ", Meiryo, Osaka,sans-serif;
	line-height:1.5;
	overflow-x:hidden;
}

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

	body {
		font-size: 27px;
		width: 750px !important;
		max-width: 750px !important;
	}
}

a{color: #4c9e4c;}
a:link {color:#4c9e4c; text-decoration:none;}
a:visited {color:#4c9e4c; text-decoration:none;}
a:hover {color:#008c43; /*text-decoration:underline;*/}

img {
	border:0;
	vertical-align: bottom;
}

section{padding:100px 0;}


a[href^="tel:"] {
    pointer-events:none;
}

@media screen and (max-width: 750px) {
	a[href^="tel:"] {
		pointer-events:auto;
	}
}

.ipad #primary, .safari #primary {
	width: 1200px !important;
	max-width: 1200px !important;
	overflow: hidden !important;
}

@media screen and (max-width: 750px) {
	#primary, .safari #primary, .ios #primary {
		width: 750px !important;
		max-width: 750px !important;
		overflow: hidden;
	}
}




/*------------------------------------------------------------------------------------------------------------------
　font-size
-------------------------------------------------------------------------------------------------------------------*/

h1{font-size:52px;margin: 0;}
h2{
	font-size:48px;
	margin: 0;
	color: #6a5246;
	position: relative;
	padding-bottom: 25px;
	font-weight: normal;
	text-align: center;
	letter-spacing: 0.05em;
}
h2:before{
	content: "";
	position: absolute;
	background-image: url("../image/common/circle-line.png");
	width:100%;
	height: 15px;
	background-position: center;
	background-repeat: no-repeat;
	left: 0;
	bottom: 0;
}
h2 span{font-size: 38px;}

h3{font-size:36px;margin: 0;}

h4{font-size:28px;}
h5{font-size:24px;}
h6{font-size:20px;}


@media screen and (max-width: 750px) {
h1{font-size:54px;}
h2{font-size:50px;}
h3{font-size:38px;}
h4{font-size:32px;}
h5{font-size:28px;}
h6{font-size:25px;}

}


/*------------------------------------------------------------------------------------------------------------------
　preparation
-------------------------------------------------------------------------------------------------------------------*/

#lineup-font-size-sampler { display:none; }

div:after, section:after, article:after, ul:after {
    content: "";
    display: block;
    clear: both;
}

.link a {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
}

/*------------------------------------------------------------------------------------------------------------------
　expression
-------------------------------------------------------------------------------------------------------------------*/

.clear { clear:both; }

.under { margin-bottom:30px !important; }
.under-db { margin-bottom:60px !important; }
.under-harf { margin-bottom:15px !important; }

.right { float:right; margin-left:30px; margin-bottom:15px; margin-top:5px;}
.left { float:left; margin-right:30px; margin-bottom:15px; margin-top:5px;}

.text-center { text-align:center; }
.text-left { text-align:left; }
.text-right { text-align:right; }

.first { padding-top:0 !important; margin-top:0 !important; }
.last { padding-bottom:0 !important; margin-bottom:0 !important; }

.ro img:hover,.ro:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

.dropshadow {
	box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
  -moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
  -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
}

/* 画像のぼやけ対策 */
.rendering {
	backface-visibility: hidden;
	filter: blur(0);
	image-rendering: -webkit-optimize-contrast;
}

.overflowHidden {
    overflow: hidden;
}

/*------------------------------------------------------------------------------------------------------------------
　img align for wordpress
-------------------------------------------------------------------------------------------------------------------*/

.aligncenter {
    display: block;
    margin: 0 auto;
	padding-bottom:25px;
	max-width:100%;
	height:auto;
}
.alignright { float: right; margin-left:30px; margin-bottom:25px; max-width:575px!important; height:auto;}
.alignleft { float: left; margin-right:30px; margin-bottom:25px; max-width:575px!important;height:auto; }

.aligncenter img, .alignright img, .alignleft img {
	max-width:100%;
	height:auto;
}





@media screen and (max-width: 1150px) {
	.aligncenter {
		display: block;
		margin: 0 auto;
		padding-bottom:25px;
		max-width:100%;
		text-align:center;
	}
	.alignright { float: none; margin: 0 auto; margin-bottom:0; padding-bottom:25px; max-width:800px!important; text-align:center; display: block;}
	.alignleft { float: none; margin: 0 auto; margin-bottom:0; padding-bottom:25px; max-width:800px!important; text-align:center; display: block;}
}


/*------------------------------------------------------------------------------------------------------------------
　wp-pagenavi
-------------------------------------------------------------------------------------------------------------------*/

.wp-pagenavi {
	margin-top:40px;
	padding-top:40px;
	display:block !important;
	clear:both !important;
	text-align:center;
	
}

.wp-pagenavi ul{
	list-style: none;
	padding-left: 0;
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center	
}

.wp-pagenavi a ,.wp-pagenavi span.pages, .wp-pagenavi span.extend {
		color:#4c9e4c !important;
		padding:8px 12px 8px 12px !important;
		background-color:#fff;
		font-size:16px !important;
		margin-right:3px !important;
		text-decoration:none !important;
	    border: solid 1px #fff !important;
}	
.wp-pagenavi a:hover {
		color:#fff !important;
		background-color: #008c43;
		border:solid 1px #008c43!important;
	   /*opacity:0.8;*/

}
 .wp-pagenavi span.current{
		padding:8px 12px 8px 12px !important;
		border:solid 1px #4c9e4c!important;
		color: #fff!important;
		font-size:16px;
		margin-right:3px !important;
	 	background-color: #4c9e4c;
}


@media screen and (max-width: 750px) {
.wp-pagenavi a ,.wp-pagenavi span.pages, .wp-pagenavi span.extend, .wp-pagenavi span.current{
		font-size:24px !important;;
	}
}


/*------------------------------------------------------------------------------------------------------------------
　fancybox-button
-------------------------------------------------------------------------------------------------------------------*/

@media screen and (max-width: 750px) {	
 
	.fancybox-button {
		height: 80px;
		width: 80px;
	}
	
	.fancybox-navigation .fancybox-button {
		height: 120px;
		width: 90px;
	}
	
	.fancybox-infobar{font-size:18px;}
	
	.fancybox-caption{font-size: 24px;}
}

/*------------------------------------------------------------------------------------------------------------------
　Google site search
-------------------------------------------------------------------------------------------------------------------*/

.g-search-form {
	width: 247px;
	height: 41px;
	border-radius: 3px;
	display: inline-block;
}

/* Googleカスタム検索ボックスのレイアウト調整 start */

.gsc-control-cse {
	padding: 0 !important;
	border: none !important;
}

.gsc-input-box {
	border: none !important;
}

.gsib_a {
	padding: 0 !important;
}

table.gsc-search-box, form.gsc-search-box {
	margin-bottom: 0 !important;
}

.gsc-search-button {
	position: absolute !important;
	z-index: 99 !important;
	top: 0;
	right: 0;
}

.g-search-form {
	vertical-align: top !important;
	position: absolute !important;
	top: 0 !important;
	right: 259px !important;
}

.g-search-form form {
	position: relative;
}

.g-search-form input[type=text] {
	width: 100% !important;
	height: 41px !important;
	border-radius: 3px !important;
	background-color: #f9f9f9 !important;
	border: 1px solid #d9d9d9 !important;
	padding: 11.5px !important;
	padding-left: 15px !important;
	position: absolute !important;
	top: 15px !important;
	left: 0 !important;
	background-position: center left 15px !important;
}

.g-search-form button {
	background-image: url("../image/header/search-button.png") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-color: #ffb400 !important;
	border-radius: 3px !important;
	width: 48px !important;
	height: 32px !important;
	border: none !important;
	position: absolute !important;
	top: 17.5px !important;
	right: 5px !important;
}

.g-search-form button svg {
	display: none !important;
}

.gsst_a {
	display: none !important;
}







/*------------------------------------------------------------------------------------------------------------------
　primary
-------------------------------------------------------------------------------------------------------------------*/

#primary {
	width:100%;
	height:100%;
	min-width:750px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}

@media screen and (max-width: 750px) {
	#primary {
		width: 750px;
		min-width: 750px;
		overflow: hidden;
	}
}

article {
	width:100%;
	max-width: 1200px;
	margin-left:auto;
	margin-right:auto;
	position:relative;
	transition:0.3s;

}

@media screen and (max-width: 1260px) {
	article {
		width:100%;
		padding-left:30px;
		padding-right:30px;
	}
}

@media screen and (max-width: 750px) {
	article {
		width: 750px;
		min-width: 750px;
		overflow: hidden;
	}
}

.inner {
  width: 1240px;
  margin-left:auto;
  margin-right:auto;

}

@media screen and (max-width: 1260px) {
	.inner{
		width:100%;
		padding-left:30px;
		padding-right:30px;
	}
}

@media screen and (max-width:750px) {
  .inner {
    /*width: calc(100% - 40px);*/
  }
}



/*------------------------------------------------------------------------------------------------------------------
　header
-------------------------------------------------------------------------------------------------------------------*/

#header{
	width: 100%;
	min-width: 750px;
}

@media screen and (max-width: 1000px) {
	#header{height: 120px;}
}

/*------------------------------------------------------------------------------------------------------------------
　navi
-------------------------------------------------------------------------------------------------------------------*/

#header h1.logo{font-size: 0;}

@media (max-width: 1350px) {
	#header h1.logo{position: absolute;left:30px;top:0px;}
}

#header .logo a {padding: 20px 0;display: block;}

@media (max-width: 750px) {
#header .logo a {padding: 25px 0;display: block;}	
}


/*@media (max-width: 1080px) {
	.logo a {padding: 30px 0 20px;}
}*/

#header .content{
	width:100%;
	max-width: 1500px;
	margin-left:auto;
	margin-right:auto;
	position:relative;
	transition:0.3s;
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-orient: horizontal;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: row;
  	flex-direction: row;	
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

@media screen and (max-width: 1560px) {
	#header .content{
		width:100%;
		padding-left:30px;
		padding-right:30px;
	}
}

@media screen and (max-width: 750px) {
	#header .content{
		width: 750px;
		min-width: 750px;
	}
}





.navimenu {
 	 display: block;
		width: calc(100% - 300px);
}


@media (max-width: 1350px) {
	.navimenu {	width: 100%;}
}


.navimenu.sp-menu{display: none;}

.navimenu .contact-nav{
	padding: 0;
	list-style: none;
	margin-bottom: 0;
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-orient: horizontal;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: row;
  	flex-direction: row;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	/*width: 490px;*/
}

@media screen and (max-width: 1000px) {
	.navimenu .contact-nav{
		position: absolute;
		right: 130px;
		margin-top: 20px;
	}
}

@media screen and (max-width: 750px) {
		.navimenu .contact-nav{
		right: 130px;
		/*margin-top: 15px;	*/
	}
}

.navimenu .contact-nav li{
	width: 230px;
	margin-right: 25px;
}

@media screen and (max-width: 1000px) {
	.navimenu .contact-nav li{margin-right: 15px;}
	.navimenu .contact-nav li:nth-child(1){width: 205px;}
}

@media screen and (max-width: 1000px) {
	.navimenu .contact-nav li:nth-child(1){display: none;}
}


.navimenu .contact-nav li:nth-child(2){
	text-align: right;
	margin-right: 0px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: bold;
}

@media screen and (max-width: 1000px) {
	.navimenu .contact-nav li:nth-child(2){width: 276px;}
}



@media screen and (max-width: 750px) {
	.navimenu .contact-nav li:nth-child(2){width: 260px;}
}


.navimenu .contact-nav li a{
	position: relative;
	height: 60px;
	line-height: 1.0;
	display: block;
}

@media screen and (max-width: 1000px) {
	.navimenu .contact-nav li a{
		height: 75px;
	}	
}

.navimenu .contact-nav li:nth-child(1) a{
	border: 2px solid #4c9e4c;
	background-color: #fff;
	padding: 20px 30px 20px 70px;
	border-radius: 50px;
} 

/*@media screen and (max-width: 1000px) {
	.navimenu .contact-nav li:nth-child(1) a{padding: 20px 20px 20px 70px;}
}*/


.navimenu .contact-nav li:nth-child(1) a:after{
	content: "";
	position: absolute;
	background-image: url("../image/header/ga.png");
	background-repeat: no-repeat;
	background-size: contain;
	width: 33px;
	height: 15px;
	left: 20px;
	top: 50%;
		  -webkit-transform:translateY(-50%);
  -ms-transform:translateY(-50%);
  transform:translateY(-50%);
}

.navimenu .contact-nav li:nth-child(1) a:before{
	content: "";
	position: absolute;
	background-color:#4c9e4c;
	height: 42px;
	width:42px;
	border-radius: 50%;
	left: 15px;
	top: 50%;
		  -webkit-transform:translateY(-50%);
  -ms-transform:translateY(-50%);
  transform:translateY(-50%);
}


.navimenu .contact-nav li:nth-child(1) a:hover:before{background-color: #008c43;}

.navimenu .contact-nav li:nth-child(2) a{
	padding: 5px 30px 10px;
	background-image: url("../image/header/tel-bg.png");
	background-repeat: no-repeat;
	background-size: contain;
	line-height: 1.2;
} 

@media screen and (max-width: 1000px) {
	.navimenu .contact-nav li:nth-child(2) a{
		padding-top: 10px;
		background-image: url("../image/header/sp-tel-bg.png");
	}	
}

@media screen and (max-width: 750px) {
	.navimenu .contact-nav li:nth-child(2) a{
		line-height: 1.0;
		padding-top: 5px;
	}	
}



.navimenu .contact-nav li:nth-child(2) a:before{
	content: "";
	position: absolute;
	background-image: url("../image/header/tel.png");
	background-repeat: no-repeat;
	background-size: contain;
	width: 22px;
	height: 24px;
	left: 25px;
	bottom: 10px;
}

@media screen and (max-width: 1000px) {
	.navimenu .contact-nav li:nth-child(2) a:before{
	width: 30px;
	height: 30px;
	bottom:15px;
	left: 30px;	
	}
	
}


@media screen and (max-width: 750px) {
	.navimenu .contact-nav li:nth-child(2) a:before{
		width: 100%;
		height: 30px;
		background-position: left;
		left: 15px;
		/*bottom: 20px;*/
	}	
}


.navimenu .contact-nav li:nth-child(2) a span{color: #fff;}
.navimenu .contact-nav li:nth-child(2) a span:nth-child(1){font-size:14px;}
.navimenu .contact-nav li:nth-child(2) a span:nth-child(2){font-size:22px;font-weight: bold;}


@media screen and (max-width:1000px) {
.navimenu .contact-nav li:nth-child(2) a span:nth-child(1){font-size:18px;}
.navimenu .contact-nav li:nth-child(2) a span:nth-child(2){font-size:26px;font-weight: bold;}
}

@media screen and (max-width:750px) {
.navimenu .contact-nav li:nth-child(2) a span:nth-child(1){font-size:17px;}
.navimenu .contact-nav li:nth-child(2) a span:nth-child(2){font-size:26px;font-weight: bold;}
}

/*
@media screen and (max-width: 750px) {
.navimenu .contact-nav li:nth-child(2) a span:nth-child(1){font-size:18px;}
.navimenu .contact-nav li:nth-child(2) a span:nth-child(2){font-size:26px;font-weight: bold;}
}
*/

.navimenu-nav{
	padding: 0;
	list-style: none;
	margin: 0;
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-orient: horizontal;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: row;
  	flex-direction: row;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;	
}



@media (max-width: 1300px) {
	.navimenu-nav{
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	}
}

.navimenu-nav li a{
	padding: 25px 20px 30px 20px;
	display: block;
	color: #585656;
	position: relative;
}

@media (max-width: 1440px) {
	.navimenu-nav li a{
	padding: 25px 15px 30px 15px;
	}
}
@media (max-width: 1050px) {
	.navimenu-nav li a{
	padding: 25px 13px 30px 13px;
	letter-spacing: -0.025em;
	}
}

.navimenu-nav li a:hover{
	color: #008c43;
}

.navimenu-nav li a:hover:before{
	content: "";
	position: absolute;
	border-radius: 100%;
	width: 10px;
	height: 10px;
    background-color: #008c43;
	left:50%;
	-webkit-transform:translateX(-50%);
	-ms-transform:translateX(-50%);
	transform:translateX(-50%);
	bottom: 15px;
}

.navimenu-nav li a.active{
    color: #4c9e4c;
	position: relative;
}

.navimenu-nav li a.active:before{
	content: "";
	position: absolute;
	border-radius: 100%;
	width: 10px;
	height: 10px;
    background-color: #4c9e4c;
	left:50%;
	-webkit-transform:translateX(-50%);
	-ms-transform:translateX(-50%);
	transform:translateX(-50%);
	bottom: 15px;
}


.navimenu-nav li a.active:hover{
	color: #008c43;
}

.navimenu-nav li a.active:hover:before{
 	background-color: #008c43;
}



.navimenu-nav li.parent{position: relative;}

.navimenu-nav li.parent:hover .child{
	opacity: 1;
	visibility: visible;
	margin: 0;
	list-style: none;
}

.navimenu-nav li.parent .child{
	width: 200px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%); 
	position: absolute;
	z-index: 1;
	opacity: 0;
	visibility: hidden;
	margin: 20px 0 0 0;
	background-color: #4c9e4c;
	-webkit-transition:  opacity 1s;
	transition:  opacity 1s;
	padding-left: 0;
}


.navimenu-nav li.parent .child li a{color: #fff; padding:20px 25px;display: block;text-align: center;}

.navimenu-nav li.parent .child li a:hover{background-color: #008c43;}
.navimenu-nav li.parent .child li a:hover:before{
	content:none;
}

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

.pc-menu .navimenu-nav{display: none;}

.navimenu.sp-menu{display: block;}

	
.navimenu-toggle {
	cursor: pointer;
	background-color: #4c9e4c;
	border: 0;
	/*padding: 15px;*/
	padding:15px 10px;
	height: 85px;
	width: 85px;
	position: fixed;
	right: 15px;
	top:15px;
	display: inline-block;
	z-index: 10;
	outline:none;
}
.navimenu-toggle:hover{
	background-color: #008c43;
	/*border: 3px solid #fff;*/
	outline: none;
}

[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
   outline: none;
}	

	
	
.navimenu-toggle-bar{
  display: block;
  width: 55px;
  height: 3px;
  background-color: #fff;
  /*-webkit-transition: 0.15s cubic-bezier(0.75, -0.55, 0.25, 1.55);
  transition: 0.15s cubic-bezier(0.75, -0.55, 0.25, 1.55);*/
transition: all 0.25s;	
  margin-left:5px;
}
	
	
.navimenu-toggle:hover .navimenu-toggle-bar{
background-color: #fff;	
/*width: 47px;*/
}
	
.navimenu-toggle-bar + .navimenu-toggle-bar {
  margin-top: 9px;
}
	
.navimenu-font:before{
/*	font-size: 17px; 
	color: #fff;
	letter-spacing: -0.075em;
    line-height: 1.0;
    padding-top: 10px;
    display: block;
    content: "メニュー";
    position: absolute;
	bottom: 10px;	*/
    content: "メニュー";
    display: block;
	font-size: 17px;
	font-weight: bold;
	color: #fff;
	letter-spacing: -0.15em;
    line-height: 1.0;
    padding-top: 10px;		
}

.navimenu-toggle.active .navimenu-toggle-bar {
  margin: 0;
  margin-left:5px;	
  position: absolute;
  top: 30px;
}
	
.navimenu-toggle.active .navimenu-toggle-bar:nth-child(1) {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.navimenu-toggle.active .navimenu-toggle-bar:nth-child(2) {
  opacity: 0;
}
.navimenu-toggle.active .navimenu-toggle-bar:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}


.navimenu-toggle.active .navimenu-font:before{
		content:none;
}
.navimenu-toggle.active .navimenu-font:after{
    content: "閉じる";
    display: block;
	font-size: 17px; 
	color: #fff;
	letter-spacing: -0.075em;
    line-height: 1.0;
    padding-top: 45px;
	font-weight: bold;
}
	
	
	

	
 .sp-navimenu-nav{
    display: none;
 }
	
.sp-navimenu-nav.open{
    display: block;
}	
	
.sp-navimenu-nav {
	width: 100%; 
	position: fixed;
	background-color: #f2fbf6!important;
	height:100%;
	top: 0;
	left: 0;
	padding: 50px!important;
	z-index: 9;
	text-align: center;
	min-width: 750px;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;   	  
	margin-top: 0;
  }
	
	
@media screen and (max-width: 750px) {
	.sp-navimenu-nav {padding: 50px 30px!important;}
}	
	
	
.sp-navimenu-nav ul{
	margin: 0;
	list-style: none;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding:25px 0 50px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;		
}
	
@media screen and (max-width: 750px) {
	.sp-navimenu-nav ul{
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;			
	}
}	
		
	
.sp-navimenu-nav ul:after {
content: none;
}
	
  .sp-navimenu-nav li {
   width:calc(50% - 25px);
	border-bottom: 2px dotted #755e54;
/*	margin-right: 50px;*/
  }
	
	
@media screen and (max-width: 750px) {
	 .sp-navimenu-nav li {width:100%;}
}	
			
.sp-navimenu-nav li a{padding: 25px;display: block;}
	
.sp-navimenu-nav a:hover{color: #008c43;}	
	
.sp-navimenu-nav li.sp-parent{
	width: 100%;
	margin-right: 0;
	border: none;
	padding-top: 30px;
	/*padding:30px;*/
	position: relative;
	/*background-color:#e6fbff;*/
	/*margin: 30px 0 0;*/
	margin: 0;
}
	


.sp-navimenu-nav li.sp-parent > span{position: relative;font-size: 28px;padding:0 30px 15px;}

@media screen and (max-width: 750px) {
	.sp-navimenu-nav li.sp-parent > span{font-size:34px;}
}	
		
	
.sp-navimenu-nav li.sp-parent > span:before{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 8px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #a2e1fd, #a2e1fd 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #a2e1fd, #a2e1fd 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
	
	
	
	
/*	
.sp-navimenu-nav li.sp-parent:before{
content:"";
position:absolute;
bottom:0;
right:0;
width:80px;
height:100px;
border-right:#8ddaff 4px solid; 
border-bottom:#8ddaff 4px solid;

}		
.sp-navimenu-nav li.sp-parent:after {
content:"";
position:absolute;
bottom:0;
right:90px;
width:30px; 
height:100px; 
border-bottom:#8ddaff 4px dashed;
}	
*/	

.sp-navimenu-nav li.sp-parent .sp-child{padding: 0;margin: 0;padding-top: 30px; }
	
@media screen and (max-width: 750px) {
	.sp-navimenu-nav li.sp-parent .sp-child{
		-webkit-box-orient: horizontal;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: row;
  	flex-direction: row;}
}		

	
@media screen and (max-width: 750px) {	
.sp-navimenu-nav li.sp-parent .sp-child li {
   width:calc(50% - 25px);
  }	
}		
	
	
	
.sp-navimenu-nav li.sp-parent .sp-child li a{padding-bottom: 50px; position: relative;text-indent: -18px;}

@media screen and (max-width: 750px) {
	.sp-navimenu-nav li.sp-parent .sp-child li a{text-indent: -25px;}
}	
	
	
	
.sp-navimenu-nav li.sp-parent .sp-child li a span{position: relative;padding-left: 125px;}
	
@media screen and (max-width: 750px) {
.sp-navimenu-nav li.sp-parent .sp-child li a span{padding-left: 115px;font-feature-settings: "palt";}
}	

	
.sp-navimenu-nav li.sp-parent .sp-child li a span:before{
	position: absolute;
	content: "";
	background-repeat: no-repeat;
	background-size: contain;
	width: 100px;
	height: 100px;
	left: 0;
	top: 50%;
		  -webkit-transform:translateY(-50%);
  -ms-transform:translateY(-50%);
  transform:translateY(-50%);
/*	left: 50%;
	top: 50%;
		  -webkit-transform:translate(-50%);
  -ms-transform:translate(-50%);
  transform:translate(-50%);*/
	/*margin-left: -100px;*/
	}
	
@media screen and (max-width: 750px) {
	.sp-navimenu-nav li.sp-parent .sp-child li a span:before{width: 90px;height: 90px;}
}	
		

	
	
.sp-navimenu-nav li.sp-parent .sp-child li:nth-child(1) a span:before{
	background-image: url("../image/header/ikamera.png");
	}
	
.sp-navimenu-nav li.sp-parent .sp-child li:nth-child(2) a span:before{
	background-image: url("../image/header/daityokamera.png");
	}
	
.sp-navimenu-nav li.sp-parent .sp-child li:nth-child(1) a:hover span:before{
	background-image: url("../image/header/ikamera-hover.png");
	}
	
.sp-navimenu-nav li.sp-parent .sp-child li:nth-child(2) a:hover span:before{
	background-image: url("../image/header/daityokamera-hover.png");
	}

	
/*.sp-navimenu-nav li.sp-parent .sp-child li:last-child{margin-right: 0px;}*/
	
	
/*.sp-navimenu-nav li:nth-child(2n){margin-right: 0;}*/



.sp-navimenu-nav .logo{
/*	background-color: rgba(255,255,255,0.7);*/
	display: block;
	padding: 25px 30px 60px;
	}

.sp-contact{padding: 0!important;}	

.sp-contact li{border: none;}
.sp-contact li a{text-align: left;}

@media screen and (max-width: 750px) {
	.sp-contact li a{text-align: center;}
}		
	

	
.sp-contact li:nth-child(1){text-align: center;}

.sp-contact li:nth-child(1) img{max-width: 100%;height: auto;}	

@media screen and (max-width: 800px) {
	.sp-contact li:nth-child(1){text-align: left;text-indent: -30px;}
}
	
@media screen and (max-width: 750px) {
	.sp-contact li:nth-child(1){text-indent: 0px;}
}
	
/*.sp-contact li:nth-child(1){width: 360px;}	
	
.sp-contact li:nth-child(2){padding-left: 70px;width: calc(100% - 410px);}*/


/*@media screen and (max-width: 900px) {
.sp-contact li:nth-child(1){width: 300px;}	
	
.sp-contact li:nth-child(2){width: calc(100% - 350px);}

}	*/
	
.sp-contact li:nth-child(2) a{position: relative;padding-left: 65px;}
	
@media screen and (max-width: 750px) {
	.sp-contact li:nth-child(2) a{position: relative;padding-left: 85px;display: inline-block;}
	}
	
	
.sp-contact li:nth-child(2) a:after{
	position: absolute;
	content: "";
	background-image: url("../image/header/tel.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 40px;
	height: 40px;
	/*bottom:30px;*/
	left: 0;
	top: 50%;
		  -webkit-transform:translateY(-50%);
  -ms-transform:translateY(-50%);
  transform:translateY(-50%);	
}
	
@media screen and (max-width: 750px) {
	.sp-contact li:nth-child(2) a:after{left: 15px;	width: 44px;height: 48px;}
}		
	
	
.sp-contact li:nth-child(2) a:before{
	content: "";
	position: absolute;
	background-color:#4c9e4c;
	height: 60px;
	width:60px;
	border-radius: 50%;
	left: -10px;
	top: 50%;
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);
}

@media screen and (max-width: 750px) {
	.sp-contact li:nth-child(2) a:before{
		left: 0;
		height: 75px;
		width:75px;	
	}
}	

.sp-contact li:nth-child(2) a span{display: block;font-weight: bold;}	
.sp-contact li:nth-child(2) a span:nth-child(1){font-size:20px;color: #585656;}
.sp-contact li:nth-child(2) a span:nth-child(2){font-size:28px;font-weight: bold;}

}

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

@media screen and (max-width: 750px) {
/*	  .sp-navimenu-nav li {
	   width:100%;
		border-bottom: 2px dashed #dab896;
		margin-right: 0;
	  }	*/
	.sp-navimenu-nav{padding: 50px 30px;}
	.sp-navimenu-nav ul{padding: 25px 0px 50px;}
	
/*	.sp-navimenu-nav li:last-child a{
		font-size: 32px;
	}	*/
}


@media screen and (max-width: 750px) {
.sp-contact li:nth-child(2) a span:nth-child(1){font-size:24px;}
.sp-contact li:nth-child(2) a span:nth-child(2){font-size:34px;font-weight: bold;/*letter-spacing: -0.075em;*/}
}

/*------------------------------------------------------------------------------------------------------------------
　footer
-------------------------------------------------------------------------------------------------------------------*/
#footer {
	position: relative;
	width:100%;
	background-image: url("../image/footer/footer-bg.jpg");
	background-repeat: repeat;
	padding:100px 0 186px;
}

#footer .logo{display: block;margin: auto;text-align: center;}

#footer .logo img{max-width: 100%;height: auto;}



#footer .content{
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-orient: horizontal;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: row;
  	flex-direction: row;
	-webkit-box-pack: justify;
	/*margin-top: 50px;*/
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;	
}


@media (max-width: 1000px) {
	#footer .content{
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;		
	}	
}

#footer .content .box{
	width: calc(50% - 25px);
	margin-right: 50px;
}


@media (max-width: 1260px) {
	#footer .content .box{
		width: calc(50% - 15px);
		margin-right: 30px;
	}	
}

@media (max-width: 1000px) {
	#footer .content .box{
		width: 100%;
		margin-right: 0px;margin-bottom: 50px;
	}	
}

#footer .content .box:last-child{
	margin-right: 0;
	padding: 50px 30px;
	background-color: #fff;
	text-align: center;
}

@media (max-width: 1000px) {
	#footer .content .box:last-child{margin-bottom: 0px;}
}



#footer .content .box:last-child img{
	max-height: 100%;
	height: auto;
	display: block;
	margin: auto;
}

#footer .content .box .contact-address{
	list-style: none;
	margin: 0;
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-orient: horizontal;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: row;
  	flex-direction: row;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;	
	margin-top: 30px;
	margin-bottom: 30px;
	font-size: 24px;
	padding-left:0;
}

@media (max-width: 1200px) {
	#footer .content .box .contact-address{
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}	
}

@media (max-width: 750px) {
	#footer .content .box .contact-address {font-size: 28px;}
}


#footer .content .box .contact-address span{
	padding:5px 10px;
	font-size: 20px;
	color: #fff;
	border-radius: 50px;
	margin-right: 15px;
}

@media (max-width: 750px) {
	#footer .content .box .contact-address span{font-size: 24px;}
}

#footer .content .box .contact-address li:nth-child(1) span{background-color: #008c43;}
#footer .content .box .contact-address li:nth-child(2) span{background-color: #5cbaf0;}
#footer .content .box .contact-address li:nth-child(2) {color: #5cbaf0;}

#footer .content .box .contact-address li:first-child{margin-right: 30px;}


@media (max-width: 1200px) {
	#footer .content .box .contact-address li:first-child{margin-right: 0px;margin-bottom: 15px;}
}

@media (max-width: 1000px) {
	#footer .content .box .contact-address li:first-child{margin-right: 30px;margin-bottom: 0px;}
}



#footer a[href^="tel:"] {
   color:#008c43;
}



#footer .content .clinic-table{width: 100%;}


@media (max-width: 1000px) {
	#footer .content .clinic-table{width: 575px;margin: auto;}
}

@media (max-width: 750px) {
	#footer .content .clinic-table{width: 100%;}
}




#footer .content .box:first-child table{
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: inherit;
}

#footer .content .box:first-child table th,
#footer .content .box:first-child table td{
	border-bottom: 2px solid #e5e5e5;
	line-height: 1;
}

#footer .content .box:first-child table tr:nth-child(1) th,
#footer .content .box:first-child table tr:nth-child(1) td{
	border-top: 2px solid #e5e5e5;
}

#footer .content .box:first-child table th{
	/*width: 160px;*/
	font-weight: normal;
	text-align: left;
	padding:15px 25px;
}
@media (max-width: 1260px) {
	#footer .content .box:first-child table th{padding:15px;}
}

#footer .content .box:first-child table td{
	/*width: calc(100% - 160px);*/
	padding:15px 12.5px;
	text-align: center;
}

@media (max-width: 1260px) {
	#footer .content .box:first-child table td{padding:15px 7.5px;}
}


#footer .content .box:first-child table td:last-of-type{padding-right: 25px;}

@media (max-width: 1260px) {
	#footer .content .box:first-child table td:last-of-type{padding-right: 15px;}
}

#footer .content .box:first-child table td .mark{font-size: 18px;color:#4c9e4c;}

#footer .content .box:first-child table td .ngmark{font-size: 20px;}


@media (max-width: 750px) {
	#footer .content .box:first-child table td .mark{font-size: 22px;}
	#footer .content .box:first-child table td .ngmark{font-size: 24px;}
}

#footer .content .box:first-child .attention{
	margin: 0;
	padding-left: 0;
	list-style: none;
	margin-left:18px;
	margin-top: 25px;
}


@media (max-width: 1000px) {
	#footer .content .box:first-child .attention{width: 575px;margin: auto;margin-top: 25px;padding-left: 18px;}
}


@media (max-width: 750px) {
	#footer .content .box:first-child .attention{width: 100%;}	
}




#footer .content .box:first-child .attention li{position: relative;margin-bottom: 10px;}
#footer .content .box:first-child .attention li:last-child{color: #4c9e4c;margin-bottom: 0px;}

#footer .content .box:first-child .attention li:before{
	content: '※';
	margin-left:-18px;
	top: 0;
	position: absolute;
}

@media (max-width: 750px) {
#footer .content .box:first-child .attention li:before{margin-left:-25px;}
}

#footer .content .box:first-child .attention li span{display: inline-block;}



#footer .content .consultation{position: relative;padding-left: 35px;}

#footer .content .consultation:before{
	position: absolute;
	content: "";
	background-image: url("../image/footer/time.png");
	background-repeat: no-repeat;
	background-size: contain;
	width: 30px;
	height: 30px;
	left: 0;
	top: 50%;
		  -webkit-transform:translateY(-50%);
  -ms-transform:translateY(-50%);
  transform:translateY(-50%);	
	
}


#footer .content .box:last-child img{max-width: 100%; height: auto;}


#footer .content .box:last-child .more-btn{
	/*width: 100%;*/
	width: 450px;
	padding:15px;
	display: block;
	border-radius: 50px;
	background-color: #4c9e4c;
	/*border:1px solid #4c9e4c;*/
	text-indent:24px;
	text-align: center;
	font-size: 24px;
	color: #fff;
	/*margin-top: 30px;*/
	margin: 30px auto 0;
	position: relative;
}
#footer .content .box:last-child .more-btn:hover{background-color: #008c43;}

@media screen and (max-width: 1000px) {
	#footer .content .box:last-child .more-btn{/*width: 450px;*/margin: 30px auto 0;}	
}

@media screen and (max-width: 750px) {
	#footer .content .box:last-child .more-btn{text-indent:28px;font-size: 28px;}	
}


#footer .content .box:last-child .more-btn:after{
	position: absolute;
	content: "";
	background-image: url("../image/footer/white-caret-right-solid.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 12.5px;
	height: 22px;
	right: 30px;
	top:50%;
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);	
}

#footer .content .box:last-child .more-btn span{position: relative;}

#footer .content .box:last-child .more-btn.access span:before{
	position: absolute;
	content: "";
	background-image: url("../image/footer/access-icon.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 25px;
	height: 32.5px;
	left: -50px;
	top:50%;
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);	
}





/*------------------------------------------------------------------------------------------------------------------
　コピーライト
-------------------------------------------------------------------------------------------------------------------*/

#footer .cc {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	display: block;
	padding-top: 25px;
	padding-bottom: 25px;
	text-align: center;
	background-color: #6a5246;
	color: #fff;
	font-weight: normal;
	line-height: 1.0;
}

#footer .cc span{
	font-size: 28px;
	margin-top: -4px;
	display: inline-block;
	vertical-align: middle;
}

@media screen and (max-width: 750px) {
#footer .cc span{font-size: 30px;}		
}
/*-----------------------------------------------------------------------------------
  SSL
-----------------------------------------------------------------------------------*/
#footer .ssl{
	text-align:center;
	padding-top:0px;
	padding-bottom:0;
	color: #fff;
	font-size: 16px;
}


@media screen and (max-width: 750px) {
	#footer .ssl{font-size: 22px;}
}


#footer .ssl p {
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-orient: horizontal;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: row;
  	flex-direction: row;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
    align-items: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	text-align: left;
}

@media screen and (max-width: 750px) {
	#footer .ssl p br{display: none;}
}



#footer .ssl small {
	display:inline-block;
  	margin-right:30px;
}



/*------------------------------------------------------------------------------------------------------------------
　pagetop
-------------------------------------------------------------------------------------------------------------------*/

#pagetop{margin: 0;}

#pagetop a {
	position:fixed;
	bottom: 60px;
	right: 50px;
	background-image:url("../image/footer/pagetop.png");
	width:70px;
	height:70px;
	display:block;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
	transition: 0.2s;
	z-index: 8;
}

#pagetop a:hover {
	opacity: 0.8;
}


@media screen and (max-width: 1260px) {
	#pagetop a {
		right:30px;
	}
}

@media screen and (max-width: 1000px) {
	#pagetop a {
		right:15px;
	}
}

/*------------------------------------------------------------------------------------------------------------------
　additional
-------------------------------------------------------------------------------------------------------------------*/

#contents-primary {
	position:relative;
}

#contents {
	position:relative;
}




/*------------------------------------------------------------------------------------------------------------------
下層ページ 共通
-------------------------------------------------------------------------------------------------------------------*/

#subvisual{
    position: relative;
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    height: 400px;
    background-position: 50%;
    display: -webkit-flex;
    display: flex;
/*    -webkit-align-items: center;
    align-items: center;*/
    -webkit-justify-content: center;
    justify-content: center;	
    z-index: 0;
}	



#subvisual h1{
	color: #fff;
	position: relative;
	text-align: center;
	/*margin-top: -100px;*/
	padding-top: 125px;
	/*padding-bottom: 50px;	*/
}


@media screen and (max-width: 1000px) {
	#subvisual h1{
/*	margin-top: -150px;
	padding-top: 100px;*/
	}
}
@media screen and (max-width: 750px) {
	#subvisual h1{
/*	margin-top: -200px;
	padding-top: 150px;*/
	}
}




#subvisual h1:before{
	position: absolute;
	content: "";
	background-image: url("../image/common/line.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 100%;
	height: 48px;
	left: 50%;
	bottom:-70px;
	-webkit-transform:translateX(-50%);
	-ms-transform:translateX(-50%);
	transform:translateX(-50%);
	z-index: 0;	
}


#subvisual h1 span{font-size: 42px;}

@media screen and (max-width: 750px) {
	#subvisual h1 span{font-size: 44px;}
}


#subpage section:nth-of-type(1){padding-top: 50px;background-color: #eaf9f1;}
#subpage section:nth-of-type(2){background-color: #c7ecc7;}




/*------------------------------------------------------------------------------------------------------------------
パンくずリスト
-------------------------------------------------------------------------------------------------------------------*/

.breadcrumb{background-color: #eaf9f1;}
.breadcrumb-list{
	padding-left: 0;
	display: block;
	list-style: none;
	padding-top: 30px;
	margin-bottom: 0;
	margin-top: 0;
	font-feature-settings: "palt";
}

.breadcrumb-list li{
	position: relative;
	margin-right: 50px;
	display: inline-block;
}

.breadcrumb-list li:before{
	content: '';
	width: 10px;
	height: 10px;
	border: 0;
	border-top: solid 2px #585656;
	border-right: solid 2px #585656;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	right: -30px;
	margin-top: -5px;
	transform: rotate(45deg);
}

.breadcrumb-list li:last-child{margin-right: 0;}
.breadcrumb-list li:last-child::before{content: none;}

.breadcrumb-list li.current{font-weight: bold;}

@media screen and (max-width: 750px) {
	.breadcrumb-list li.current{font-weight: normal;}
}






/*.breadcrumb-list li a{text-decoration: underline;}*/



