@charset "utf-8";

body {
	font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
	font-size: 14px;
	line-height: 1.7;
	color: #333;
	background: url(../img/common/background.jpg);
}

#wrap {
	overflow: hidden;
}

a:link    {color:#333; text-decoration:underline;}
a:visited {color:#333; text-decoration:underline;}
a:hover   {color:#333; text-decoration:none;}
a:active  {color:#333; text-decoration:underline;}

a img {
	transition: 0.6s ;
}
a img:hover {
	opacity: 0.5 ;
}

/* flex */
.flex {
 margin:0;
 display:-webkit-box;
 display:-moz-box;
 display:-ms-box;
 display:-webkit-flexbox;
 display:-moz-flexbox;
 display:-ms-flexbox;
 display:-webkit-flex;
 display:-moz-flex;
 display:-ms-flex;
 display:flex;
 -webkit-box-lines:multiple;
 -moz-box-lines:multiple;
 -webkit-flex-wrap:wrap;
 -moz-flex-wrap:wrap;
 -ms-flex-wrap:wrap;
 flex-wrap:wrap;
 width:980px;
}
/* */

/* float clear */
.clearfix:after{
	content:"."; 
	display:block; 
	height:0; 
	clear:both; 
	visibility:hidden;
}
.clearfix{
	display:inline-table;
	min-height:1%;
}
/* */
* html .clearfix{
	height:1%;
}
.clearfix{
	display:block;
}
/* */

.pc {
	display: block;
}

.sp {
	display: none;
}


/* desktop */

/* mainImage
-----------------------------------------*/

#wrap #mainImage .mainImageInner {
	width: 980px;
	margin: 0 auto;
	position: relative;
}

#wrap #mainImage .mainImageInner h1 {
	color: #fff;
	font-weight: bold;
	float: left;
}

#wrap #mainImage .mainImageInner .tel {
	position: absolute;
	top: 0;
	right: 0;
}

#wrap #mainImage .mainImageInner .tel p:first-child {
	width: 180px;
	height: 30px;
	padding: 8px 0 0 10px;
	color: #fff;
	background: #493759;
	float: left;
}

#wrap #mainImage .mainImageInner .tel p:nth-child(2) {
	width: 226px;
	height: 38px;
	padding: 0 0 0 8px;
	color: #493759;
	background: #fff;
	font-size: 1.857em;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	float: left;
}

#wrap #mainImageSp {
	display: none;
}

/* mainImage　ここまで
-----------------------------------------*/


/* header
-----------------------------------------*/
#wrap #header {
	background:linear-gradient(#493759, #604876);
}

#wrap #header ul {
    width: 100%;
	height: 64px;
	display: flex;
    justify-content: center;
    align-items: center;
}

#wrap #header ul li {
	text-align: center;
	vertical-align: middle;
	display: flex;
    border-right: 1px solid #604876;
    border-left: 1px solid #493759;
    align-items: center;
    height: -webkit-fill-available;
}

#wrap #header ul li:nth-of-type(4) a{
    min-width: 80px;
    text-align: center;
    box-sizing: border-box;
}

#wrap #header ul li a {
	display: block;
    padding: 0 12px;
    line-height: 1.4em;
}

#wrap #header ul li a:link    {color:#fff; text-decoration:none;}
#wrap #header ul li a:visited {color:#fff; text-decoration:none;}
#wrap #header ul li a:hover   {color:#fff; text-decoration:none;}
#wrap #header ul li a:active  {color:#fff; text-decoration:none;}


@media screen and (max-width: 1200px) {
    #wrap #header ul li a{
        padding: 0 6px;
    }
    #wrap #header ul li:first-of-type a{
        width: 120px;
    }
    #wrap #header ul li:first-of-type a img{
        width: 100%;
        height: auto;
    }
    #wrap #header ul li:nth-of-type(4) a {
        min-width: 50px;
    }
}

@media screen and (max-width: 985px) {
    #wrap #header ul li a{
        font-size: 13px;
    }
}


/* header　ここまで
-----------------------------------------*/

/* navigation
-----------------------------------------*/

#wrap #header .mod_nav {
	display: none;
}

#wrap #header .navigation {
	display: block;
	visibility: visible;
    width: 100%;
	margin: auto;
}
	
/* navigation　ここまで
-----------------------------------------*/

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

#pankuzu {
	padding: 2px 0;
	font-size: 	0.571em;
	background: #f2f2f2;
}

#pankuzu p {
	width: 1000px;
	margin: 0 auto;
}

#wrap #main {
	width: 1000px;
	margin: 0 auto;
	padding: 0 20px;
}

h2 {
	margin: 0 0 40px 0;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	font-size: 2.000em;
	font-weight: bold;
	line-height: 1.4;
}

h3 {
	font-size: 1.429em;
	font-weight: bold;
	line-height: 1.4;
}

#wrap table tr th {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	font-weight: bold;
	background: url(../img/common/th_bg.jpg);
}

#wrap table tr td {
	background: url(../img/common/td_bg.jpg);
}

#wrap #contactBox {
	width: 860px;
	height: 270px;
	min-height: 270px !important;
	margin: 40px auto 0 auto;
	padding: 30px 70px !important;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	background: url(../img/common/contactbox_bg.jpg) no-repeat !important;
}

#wrap #contactBox .Inner {
	width: 878px;
	height: 210px;
	padding: 40px;
	background: url(../img/common/contactbox_inner.png) no-repeat;
	color: #fff;
}

#wrap #contactBox .Inner .ttl {
	margin: 0 0 20px 0;
	padding: 0 0 0 4px;
	border-left: 2px solid #fff;
	font-weight: bold;
	line-height: 1;
}

#wrap #contactBox .Inner h2 {
	margin: 0 0 10px 0;
}

#wrap #contactBox .Inner div {
	float: left;
}

#wrap #contactBox .Inner div;first-child {
	margin: 0 20px 0 0;
}

#wrap #contactBox .contactTel {
	font-size: 2.571em;
	line-height: 1;
}

#wrap #contactBox .contactTime {
	font-size: 1.143em;
	font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
	line-height: 1;
}

#wrap #contactBox .btn {
	width: 342px;
	height: 62px;
	background: url(../img/top/btn_bg.png) no-repeat;
	font-size: 	1.286em;
	font-weight: bold;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	text-align: center;
	display: block;
}

#wrap #contactBox .btn a {
	display: block;
	width: 342px;
	height: 62px;
	margin: 20px 0 0 0;
	padding: 14px 0 0 0;
}
#wrap #contactBox .btn a:link    {color:#333; text-decoration:none;}
#wrap #contactBox .btn a:visited {color:#333; text-decoration:none;}
#wrap #contactBox .btn a:hover   {color:#333; text-decoration:none;}
#wrap #contactBox .btn a:active  {color:#333; text-decoration:none;}

#wrap #contactBox .btn a img {
	vertical-align: bottom;
}

#wrap .bnCleaning {
	width: 1000px;
	margin: 20px auto 0 auto;
}



/* main　ここまで
-----------------------------------------*/


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

#wrap #pageTop {
	margin: 40px 0 0 0;
	height: 40px;
	line-height: 40px;
	text-align: center;
	background: #e4e4e4;
}
 
#wrap #pageTop a {
	color: #333;
	display: block;
}

#wrap #pageTop a:link    {color:#333; text-decoration:none;}
#wrap #pageTop a:visited {color:#333; text-decoration:none;}
#wrap #pageTop a:hover   {color:#333; text-decoration:none;}
#wrap #pageTop a:active  {color:#333; text-decoration:none;}

/* pagetop　ここまで
-----------------------------------------*/

/* footer
-----------------------------------------*/

#wrap #footer a:link    {color:#333; text-decoration:none;}
#wrap #footer a:visited {color:#333; text-decoration:none;}
#wrap #footer a:hover   {color:#333; text-decoration:underline;}
#wrap #footer a:active  {color:#333; text-decoration:none;}

#wrap #footer {
	padding-top: 10px;
	text-align: left;
	color: #333;
    background: url(../img/common/footer_bg.jpg) top center / cover repeat-x;
}

#wrap #footer .footerInner {
	width: 980px;
	margin: 0 auto 20px auto;
	padding: 0 20px;
}

#wrap #footer .footerInner .tel {
	float: right;
}

#wrap #footer .footerInner .tel p:first-child {
	width: 180px;
	height: 30px;
	padding: 8px 0 0 10px;
	color: #fff;
	background: #493759;
	float: left;
}
#wrap #footer .footerInner .tel p:nth-child(2) {
	width: 226px;
	height: 38px;
	padding: 0 0 0 8px;
	color: #493759;
	font-size: 1.857em;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	float: left;
}

#wrap #footer .footerInner .flex {
	margin: 10px 0 0 0;
	line-height: 1.7;
}

#wrap #footer .footerInner .ftLogo {
	margin: 10px 0 0 0;
}

#wrap #footer .footerInner .flex div:first-child {
	width: 250px;
}

#wrap #footer .footerInner .flex div:nth-child(2) {
	width: 500px;
	margin: 0 0 0 10px;
}

#wrap #footer ul {
	width: 700px;
	margin: 0 0 0 0;
	display: table;
	font-size: 14px;
	list-style-image: url(../img/common/point.png);
}

#wrap #footer ul li {
	border-bottom: none;
	padding-right: 10px;
	margin-right: 10px;
}

#wrap #footer ul li:last-child {
	border: none;
	padding-right: 0;
	margin-right: 0;
}

#wrap #footer ul li a {
}

#wrap #footer .copyright {
	margin: auto;
	padding: 2px 0;
	color: #fff;
	text-align: center;
	background: #493759;
}

/* footer　ここまで
-----------------------------------------*/


/* floating-banner
-----------------------------------------*/

#wrap .floating-banner {
	position: fixed;
	z-index: 999;
	bottom: 3vh;
	right: 3vw;
	width: 35vw;
	max-width: 160px;
}

#wrap .floating-banner a {
	width: 100%;
	aspect-ratio: 1/1;
	background-color: #ee7b32;
	padding: 10px;
	font-size: min(15px,3.5vw);
	line-height: 1.3;
	text-align: center;
	color: #fff;
	text-decoration: none;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.3), inset 3px 3px 0 rgba(255, 255, 255, 0.3), inset -3px -3px 0 rgba(51, 51, 51, 0.2);
	box-sizing: border-box;
	position: relative;
}

#wrap .floating-banner a::before {
	content: "";
	width: 28%;
	aspect-ratio: 1/1;
	background-image: url(../img/common/link_icon_finger.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position: absolute;
	top: -10%;
	left: 50%;
	transform: translateX(-50%) rotate(90deg);
	-webkit-transform: translateX(-50%) rotate(90deg);
	-moz-transform: translateX(-50%) rotate(90deg);
	-ms-transform: translateX(-50%) rotate(90deg);
	-o-transform: translateX(-50%) rotate(90deg);
}

#wrap .floating-banner a:hover {
	background-color: #ec682e;
}

#wrap .floating-banner a li:first-child {
	margin-bottom: 5px;
}

#wrap .floating-banner a span {
	font-size: 130%;
}

#wrap .floating-banner a br {
	display: block;
}

/* floating-banner　ここまで
-----------------------------------------*/



/* smartphone */

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

body {
	font-size: 16px;
	line-height: 1.5;
}
	
img{
	width: 100%;
	height: auto;
}

#wrap {
	overflow: hidden;
}

.pc {
	display: none;
}

.sp {
	display: block;
}


/* mainImage
-----------------------------------------*/

#wrap #mainImage {
	display: none;
}

#wrap #mainImageSp {
	display: block;
}

#wrap #mainImageSp p img {
	vertical-align: bottom;
}

/* mainImage　ここまで
-----------------------------------------*/


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

#wrap {
}

#wrap #header {
	width: 100%;
	height: 44px;
	margin: 0;
	position: static;
}

#wrap #header ul li {
	margin: 0 !important;
	border: none;
}

#wrap #header h1.sp {
	text-align: center;
}

#wrap #header h1.sp a {
	display: block;
	height: 44px;
}

#wrap #header .sp img {
	width: 140px;
	height: auto;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

#wrap #header .logoSp a {
	display: block;
	height: 44px;
}

#wrap #header .mod_nav {
	display: flex;
}

#wrap #header .mod_nav p.navtitle {
 display: none;
	float: left;
}

#wrap #header .mod_nav p.navtitle {
	width: 44px;
	cursor: pointer;
	display: block;
	color: #fff;
	padding: 0;
	z-index: 1;
	top: 0;
	right: 0;
	position: absolute;
}

#wrap #header .mod_nav ul {
	margin: 0 auto;
	width: 960px;
	width: 100%;
	display: none;
	position: absolute;
	z-index: 3;
}

#wrap #header .mod_nav ul li {
	width: 100%;
	text-align: center;
	float: none;
	border-bottom: 1px solid #888;
	background-color: rgba(255,255,255,0.8);
	display: block;
    height: auto;
}

#wrap #header .mod_nav ul li img {
	width: auto;
	height: 11px;
}

#wrap #header .mod_nav ul li a {
	display: block;
	color: #FFF;
}

#wrap #header .mod_nav ul li a {
    width: 100%;
    font-size: 16px;
    padding: 14px 0;
}

#wrap #header .mod_nav ul li.current a {
	font-weight: bold;
}

#wrap #header .mod_nav ul li a:link    {color:#333; text-decoration:none;}
#wrap #header .mod_nav ul li a:visited {color:#333; text-decoration:none;}
#wrap #header .mod_nav ul li a:hover   {color:#333; text-decoration:none;}
#wrap #header .mod_nav ul li a:active  {color:#333; text-decoration:none;}

#wrap #header .headerSp {
	display: none;
}

#wrap #header .logoSp {
	text-align: center;
}



/* header　ここまで
-----------------------------------------*/

/* navigation
-----------------------------------------*/

#wrap #header .navigation {
	visibility: visible;
	width: 100%;
	margin: 0;
	padding: 0 0 0 20px;
}
	
/* navigation　ここまで
-----------------------------------------*/


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

#wrap #main {
	width: 100%;
	padding: 0;
	position: static;
	text-align: left;
	box-sizing: border-box;
}

h2 {
	margin: 0 0 10px 0;
	font-size: 1.357em;
	line-height: 1.4;
}

#wrap #contactBox {
	width: 100%;
	height: auto;
	min-height: auto !important;
	margin: 20px auto 0 auto;
	padding: 10px !important;
	background: url(../img/common/contactBox_bg_sp.jpg) no-repeat !important;
}

#wrap #contactBox .Inner {
	width: 100%;
	height: auto;
	padding: 10px;
	background: none;
	background-color: rgba(73,55,89,0.9);
	box-sizing: border-box;
}

#wrap #contactBox .Inner .ttl {
	margin: 0 0 10px 0;
	padding: 0 0 0 4px;
	border-left: 2px solid #fff;
	font-weight: bold;
	line-height: 1;
}

#wrap #contactBox .Inner h2 {
	margin: 0 0 10px 0;
}

#wrap #contactBox .Inner div {
	float: none;
}

#wrap #contactBox .Inner div;first-child {
	margin: 0 20px 0 0;
}

#wrap #contactBox .contactTel {
	font-size: 1.889em;
	line-height: 1;
}

#wrap #contactBox .contactTime {
	font-size: 1.143em;
	line-height: 1;
}

#wrap #contactBox .btn {
	width: 100%;
	height: auto;
	background: url(../img/top/btn_bg.png) no-repeat;
	font-size: 	1.286em;
	font-weight: bold;
	text-align: center;
	display: block;
}

#wrap #contactBox .btn a {
	display: block;
	width: 100%;
	height: auto;
	margin: 20px 0 0 0;
	padding: 14px 0 0 0;
}
#wrap #contactBox .btn a:link    {color:#333; text-decoration:none;}
#wrap #contactBox .btn a:visited {color:#333; text-decoration:none;}
#wrap #contactBox .btn a:hover   {color:#333; text-decoration:none;}
#wrap #contactBox .btn a:active  {color:#333; text-decoration:none;}

#wrap #contactBox .btn a img {
	vertical-align: bottom;
}


#wrap #contactBox .btn {
	width: 100%;
	height: auto;
	background: none;
	background: linear-gradient(#e1e1e1, #fff);
	background-size: contain;
	font-size: 	1.000em;
	font-weight: bold;
	text-align: center;
	display: block;
	box-shadow: 2px 2px rgba(0,0,0,0.4);
}

#wrap #contactBox .btn a {
	display: block;
	width: 100%;
	height: auto;
	margin: 10px 0 0 0;
	padding: 10px 0;
}
#wrap #contactBox .btn a:link    {color:#333; text-decoration:none;}
#wrap #contactBox .btn a:visited {color:#333; text-decoration:none;}
#wrap #contactBox .btn a:hover   {color:#333; text-decoration:none;}
#wrap #contactBox .btn a:active  {color:#333; text-decoration:none;}

#wrap .bnCleaning {
	width: 100%;
	margin: 20px 0 0 0;
}


/* main　ここまで
-----------------------------------------*/


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

/* pagetop　ここまで
-----------------------------------------*/


/* footer
-----------------------------------------*/

#wrap #footer a:link    {color:#333; text-decoration:none;}
#wrap #footer a:visited {color:#333; text-decoration:none;}
#wrap #footer a:hover   {color:#333; text-decoration:none;}
#wrap #footer a:active  {color:#333; text-decoration:none;}

#wrap #footer {
	padding: 10px 0 0 0;
	font-size: 	0.857em;
	text-align: left;
	background: url(../img/common/footer_bg_sp.jpg) top center repeat-x;
	background-size: cover;
}

#wrap #footer p {
	padding: 0 10px;
}

#wrap #footer .footerInner {
	width: 100%;
	margin: 0;
	padding: 0;
}

#wrap #footer .footerInner .tel {
	margin: 0 auto;
	float: none;
}

#wrap #footer .footerInner .tel p:first-child {
	width: 30%;
	float: left;
}
#wrap #footer .footerInner .tel p:nth-child(2) {
	width: auto;
	float: left;
}

#wrap #footer .footerInner .flex div:first-child {
	width: 100%;
}

#wrap #footer .footerInner .flex div:nth-child(2) {
	width: 100%;
}

#wrap #footer .footerInner .flex {
	display: inline;
	margin: 20px 0 0 0;
}

#wrap #footer .footerInner .ftLogo {
	width: 60%;
	margin: 10px auto;
}

#wrap #footer .footerInner .flex .contact {
	width: 60%;
	margin: 10px auto 20px auto;
}

#wrap #footer .footerInner .clearfix {
}

#wrap #footer .footerInner table {
	margin: 0 auto;
	text-align: left;
}

#wrap #footer .footerInner .flex div:nth-child(2){
	margin: 0;
	width: 100%;
	line-height: 1.7;
}

#wrap #footer ul {
	width: 100%;
	margin: 10px 0 0 0;
	display: table;
	border-top: #888 1px solid;
	text-align: center;
}

#wrap #footer ul li {
	display: block;
	height: 44px;
	line-height: 44px;
	border-right: none;
	border-bottom: #888 1px solid;
	float: none;
	padding-right: 0;
	margin-right: 0;
}

#wrap #footer ul li:nth-child(5) {
	border-bottom: #888 1px solid;
}

#wrap #footer ul li a {
	display: block;
}

#wrap #footer .copyright {
	padding: 2px 0;
}

/* footer　ここまで
-----------------------------------------*/

}