@charset "UTF-8";

.b{
       font-weight: bold;
}

.topContainer{
	width: 1350px;
	margin : 0 auto;
}

@media screen and (max-width: 1390px){
	.topContainer{
		width: 980px;
	}
}

@media screen and (max-width: 1020px){
	.topContainer{
		width: calc(100% - 40px);
	}
}

a.contactBtn{
	width: 210px;
	background-color: #599d68;
	border-radius: 29px;
	height : 58px;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	    -ms-flex-align : center;
	        align-items : center;
	-webkit-box-pack : center;
	    -ms-flex-pack : center;
	        justify-content : center;
	margin-right: 20px;
	color: #FFF;
}

a.contactBtn > i{
	margin-left: 10px;
}


a.contactBtn.ty2{
	border: 3px solid #599d68;
	background-color: #FFF;
	margin-right: auto;
	color: #599d68;
}


a.contactBtn.ty2 i{
	color: #599d68;
}


a.contactBtn i{
	color: #FFF;
}

a.contactBtn.ty2 li {
	color: #599d68;
}

.contactBtn img{
	margin-right: 10px;
}

.topBg{
	position: relative;
	width: 100%;
	height: calc(100vh - 80px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
@media screen and (max-height: 450px){
	.topBg{
		height: 700px;
	}
}
.topBg > img{
	position: absolute;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	font-family: "object-fit: cover;";
	top: 0;
	left: 0;
}

.topBgTitle{
	position: relative;
	z-index: 1;
	left: -350px;
}

@media screen and (max-width: 1200px){
	.topBgTitle{
		left: 0;
		top: 200px;
	}
}

.aboutBoxArea{
	position: relative;
	height: auto;
	width: 100%;
}

.aboutBoxArea > img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	font-family: "object-fit: contain;";
}
.aboutBoxArea > img.pos2 {
    object-fit: cover;
    object-position: 100% -300px;
    font-family: "object-fit: cover;";
}
.aboutBoxArea > .aboutBoxBox.pa2 {
    padding: 80px 0 60px 0;
}
.aboutBoxBox{
/* 	margin: 50px auto 0 auto; */
/*	padding: 80px 0; */
	padding-top: 80px;
	padding-bottom:20px;
	position: relative;
	z-index: 1;
}
.aboutBoxBox.pa2{
	padding: 130px 0;

}

.aboutBoxTtl{
	text-align: center;
}

.aboutBoxTtl h2{
	font-size: 48px;
	letter-spacing: 0.16em;
	line-height: 34px;
}
.aboutBoxTtl img {
	margin: 0 auto 50px auto;
}

.aboutBoxAbout{
	margin: 30px 0 ;
}
.aboutBoxAbout.posRel{
	position: relative;
}
.aboutBoxAbout > img{
	margin: 0 auto;
}
.aboutBoxAbout.posRel > img{
	position: absolute;
	top: 50%;
	bottom: 50%;
	left: 0;
	right: 0;
	margin: auto;
	z-index: -1;
	opacity: 0.5;
}

.container{
	width:890px;
	margin-left:  auto;
	margin-right: auto;
}

.containerL{
	width:1500px;
	margin-left:  auto;
	margin-right: auto;
}
.aboutBoxTxt{
}

.newsListBox{
	border-top: 1px solid #dfdfdf;
	padding: 15px 0;
}


.newsListBox:last-child{
	border-bottom: 1px solid #dfdfdf;
}

.newsArea{
	max-width: 1160px;
	/*max-width: 1300px;*/
	margin: 0 auto;
	margin-top: 60px;
	padding: 20px;
}

.newsListBox  a{
	display: block;
}

.newsListBox  a > time{
	display: inline-block;
	width: 165px;
	color: #aaaaaa;
}

.grid__block--3{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 80px 50px;
    margin-bottom: 60px;
}

.topNewsBox {
    width: 260px;
    border: 3px solid;
    border-radius: 15px;
    background-color: #fff;
    margin: 10px 10px 10px 0;
    text-align: center;
    color: #fff;
    height: 50px;
    vertical-align: middle;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #7cd5c0;
}
.topNewsBox2 {
    width: 260px;
    border: 3px solid;
    border-radius: 15px;
    background-color: #fff;
    margin: 10px 10px 10px 0;
    text-align: center;
    color: #fff;
    height: 50px;
    vertical-align: middle;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #599d68;
}



.topNewsBox3 {
    width: 260px;
    border: 3px solid;
    border-radius: 15px;
    background-color: #fff;
    margin: 10px 10px 10px 0;
    text-align: center;
    color: #ffffff;
    height: 50px;
    vertical-align: middle;
    display: flex;
    justify-content: center;
    align-items: center;
    /*background-color: #cc5ae1;*/
    background-color: #ff7fa0;
    
    
}
.topNewsBox4 {
    width: 260px;
    border: 3px solid;
    border-radius: 15px;
    background-color: #fff;
    margin: 10px 10px 10px 0;
    text-align: center;
    color: #fff;
    height: 50px;
    vertical-align: middle;
    display: flex;
    justify-content: center;
    align-items: center;
    /*background-color: #649de5;*/
    background-color: #ff9a30
}

.sortNewsBoxb{
   width: 225px;
   background-color: #b5b5b5;
   text-align: center; 
   color: #fff;
   border: 2px solid #b5b5b5;
   padding:10px 0;
}

.sortNewsBox{
   width: 265px;
   background-color: #599d68;
   text-align: center; 
   color: #fff;
   border: 2px solid #599d68;
   padding:10px 0;
}

.sortNewsBoxL {
    display: flex;
    justify-content: end;
    gap: 10px;
    margin-bottom: 80px;
    /* margin: 20px; */
    /* border: 3px #599d68 solid; */
    padding: 30px;
    align-items: center;
    background-color: #f5f5f5;

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

	.sortNewsBoxL {
	    display: block;
	    justify-content: end;
	    gap: 10px;
	    margin-bottom: 80px;
	    /* margin: 20px; */
	    /* border: 3px #599d68 solid; */
	    padding: 30px;
	    align-items: center;
	    background-color: #f5f5f5;
            text-align: center;
	}
}



.date_style {
    font-size: 14px;
    margin-bottom: 10px;
    color: grey;
}

.tag{
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: 70px;
	height: 25px;
	border-radius: 13px;
	margin-right: 10px;
}

.tag.tagNews{
	background-color: #ecb250;
	color: #FFF;
}

.center, a.center{
	text-align: center;
	margin: 0 auto;
}
.moreArea{
	/*margin-top: 40px;*/
	/*margin: 20px 0;*/
	
	margin-top: 10px;
	margin-bottom: 80px;
}

#slickArea{
	height: 640px;
	margin-bottom: 45px;;
}

.linkAreaBox{
	position: relative;
	height: 640px;
	margin-bottom: 45px;;
}

.linkAreaBox > img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	font-family: "object-fit: cover;";
}
.linkAreaBoxIn{
	position: relative;
	z-index: 1;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	height: 640px;
}

.linkAreaBoxInW{
	text-align: center;
}

.linkAreaBoxInW h3{
	font-size: 55px;
	letter-spacing: 0.13em;
	line-height: 70px;
	position: relative;
	color: #FFF;
	margin-bottom: 60px;
}
.linkAreaBoxInW.ib h3{
	display: inline-block;
}

.linkAreaBoxInW.m2 h3{
	margin-bottom: 200px;
}
.linkAreaBoxInW.m2 h3 {
    margin-bottom: 200px;
}


.linkAreaBoxInW.m3 h3{
	margin-bottom: 30px;
}

.linkAreaBoxInW h3:after{
	content: "";
	display: block;
	position: absolute;
	bottom: -3px;
	left: -3%;
	width: 106%;
	height: 3px;
	background-color: #FFF;
}

.linkAreaBoxInW p{
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 32px;
	color: #FFF;
	margin-bottom: 120px;
}

.linkAreaWrap2col{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.linkAreaWrap2col .linkAreaBox{
	-ms-flex-preferred-size: 50%;
	    flex-basis: 50%;
}


.linkAreaWrap2col .linkAreaBox .container{
	width: 90%;
}

.aboutBoxTtl.mb2{
	margin-bottom: 60px;
}

.about2col{
	margin-top: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.aboutCol{
	-ms-flex-preferred-size: 45%;
	    flex-basis: 45%;
}

.aboutCol h4{
	font-size: 30px;
	letter-spacing: 0.05em;
	line-height: 36px;
	display: block;
	margin-bottom: 20px;
	text-align: center;
}
.aboutCol .detailArea{
	height: 150px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	margin-bottom: 20px;
}

footer{
	border-top: 5px solid #ecb250;
	padding:50px 0 40px 0;
	background-color: #faf9f2;
}

.footerArea{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	padding-bottom: 180px;
	position: relative;
}

.footerBox{

}

.posBR{
	position: absolute;
	bottom: 0;
	right: 0;
}
.footerBox.fl{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	    position: relative;
    z-index: 2;
}

.footerBoxImg{
	margin-bottom: 10px;
}

.footerBoxAddr{
	margin-bottom: 25px;
}
.footerBoxCap{
	margin-bottom: 10px;
}

.footerBoxList{
	margin-right: 70px;
}

.footerBoxList:last-child{
	margin-right: 0;
}
.footerBoxList a{
	font-size: 16px;
	cursor: pointer;
}

.footerBoxList ul li{
	margin-bottom: 6px;
	margin-left: 24px;
}
.footerBoxList ul li.parent{
	margin-left: 0;
}

.footerBoxList ul li.parent a{
	font-weight: bold;
}

.footerCopyRight{
	font-size: 10px;
	letter-spacing: 0.05em;
	text-align: center;
}


.spShow{
	display: none;
}
/* お問い合わせ */
.topTtl{
	height: 420px;
	position: relative;
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align : center;
	    -ms-flex-align : center;
	        align-items : center;
}

.topTtl img{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	-o-object-fit : cover;
	   object-fit : cover;
	z-index: 1;
	-o-object-position: 87%;
	   object-position: 87%;
	font-family: "object-fit : cover;"
}

.topTtl.blackLayer:after{
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.3);
}



.topTitle{
	z-index : 2;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : end;
	    -ms-flex-align : end;
	        align-items : flex-end;
}

.topTitle img{
	position: relative;
	width: auto;
	height: auto;
	margin-right: 15px;
}
.topTtl.blackLayer:after{
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
	background-color: rgba(0,0,0,0.3);
}

.blackLayer .topTitle img{
	z-index: 2;
}

.topTitleText{
	font-size: 48px;
	font-weight: 600;
	font-family: 'ヒラギノ角ゴ Pro';
	color: #fff;
	padding-bottom: 4px;
	position: relative;
	z-index : 2;
	line-height : 1;
	padding-left: 15px;
	letter-spacing : 0;
}

.topTitleText:after{
	width: 100%;
	content : "";
	height: 3px;
	background-color: #fff;
	position: absolute;
	bottom : 0;
	left : 0;
}

.defaulText{
	font-family: 'ヒラギノ角ゴ Pro';
	font-weight: 300;
	line-height : 2.153;
	color: #333333;
	letter-spacing : -0.1em;
	font-size: 16px;
}

.contactText{
	padding-bottom: 30px;
}

.contactArea{
	padding-top: 100px;
	padding-bottom: 150px;
}

.contactFormArea{
	padding: 70px 60px;
	background-color: #faf9f2;
}

.contactFormTtlArea{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-ms-flex-preferred-size: 310px;
	    flex-basis: 310px;
	min-height: 90px;
    margin-top: 20px;
}

.contactFormWrapper{
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	width: 100%;
}
.contactForm{
	-ms-flex-preferred-size: calc(100% - 310px);
	    flex-basis: calc(100% - 310px);
}

.contactForm input[type="text"], .contactForm input[type="email"], .contactForm input[type="tel"]{
	width: 100%;
	height: 60px;
	padding: 15px 10px;
}

.contactForm textarea{
	width: 100%;
	height: 240px;
	padding: 15px 10px;
}
.formTitle{
	-ms-flex-preferred-size : 195px;
	    flex-basis : 195px;
}

.formRequire{
	-ms-flex-preferred-size : 260px;
	    flex-basis : 260px;
}

.require{
	width: 40px;
	height: 24px;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	    -ms-flex-align : center;
	        align-items : center;
	-webkit-box-pack : center;
	    -ms-flex-pack : center;
	        justify-content : center;
	font-size: 12px;
	letter-spacing : -0.02em;
	background-color: #e78a1c;
	color: #fff;
	font-weight: 300;
	margin-left : auto;
	margin-right: 17px;
}

.contactForm.flx{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.contactFormMin{
	-ms-flex-preferred-size: 30%;
	    flex-basis: 30%;
	margin-right: 20px;
	margin-top: 20px;
	margin-bottom: 30px;
}
.contactFormMin.max{
	-ms-flex-preferred-size: 100%;
	    flex-basis: 100%;
	margin-right: 0;
}
.contactFormMinTtl{
	display: block;
	margin-bottom: 20px;
}

.ppCheck{
	margin-top: 30px;;
	text-align: center;
	width: 100%;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.ppCheckTxt{
	display: block;
	width: 100%;
}

.ppCheckBox{
	-ms-flex-preferred-size: 100%;
	    flex-basis: 100%;
	font-weight: bold;
	margin-top: 10px;
}

.contactButtonAera{
	margin-top: 30px;;
}
.contactBtn.contactConf{
	background-color: #fb9e3b;
	width: 80%;
}

.newsWrap{

}
.newsContent{
	border-bottom: 2px solid #ededed;
}
.newsContent:first-child{
	border-top: 2px solid #ededed;
}
.newsTtlBox{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	height: 125px;
	cursor: pointer;
}

.newsDate{
	-ms-flex-preferred-size: 150px;
	    flex-basis: 150px;
}
.newsDate time{
	color: #aaaaaa;
}
.newsTtlArea{
	-ms-flex-preferred-size: calc(100% - 190px);
	    flex-basis: calc(100% - 190px);
}
.newsTtl{
	font-size: 20px;
	letter-spacing: 0.16em;
}

.newsCross{
	-ms-flex-preferred-size: 40px;
	    flex-basis: 40px;
	height: 40px;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transition: left .5s, -webkit-transform 0.5s;
	transition: left .5s, -webkit-transform 0.5s;
	-o-transition: transform 0.5s, left .5s;
	transition: transform 0.5s, left .5s;
	transition: transform 0.5s, left .5s, -webkit-transform 0.5s;
}

.newsChk:checked ~ .newsTtlBox .newsCross{
	-webkit-transform: rotate(270deg);
	    -ms-transform: rotate(270deg);
	        transform: rotate(270deg);
	-webkit-transition: left .5s, -webkit-transform 0.5s;
	transition: left .5s, -webkit-transform 0.5s;
	-o-transition: transform 0.5s, left .5s;
	transition: transform 0.5s, left .5s;
	transition: transform 0.5s, left .5s, -webkit-transform 0.5s;
}

.newsCross span{
	display: block;
	height: 100%;
	width: 100%;
	position: relative;
}

.newsCross span:before,.newsCross span:after{
	content: "";
	position: absolute;
	width: 2px;
	height: 100%;
	display: block;
	background-color: #f2cc8a;
	-webkit-transition: background-color .5s;
	-o-transition: background-color .5s;
	transition: background-color .5s;
}

.newsChk:checked ~ .newsTtlBox .newsCross span:before, .newsChk:checked ~ .newsTtlBox .newsCross span:after{
	background-color: #000;
	-webkit-transition: background-color .5s;
	-o-transition: background-color .5s;
	transition: background-color .5s;
}

.newsCross span:before{
	-webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	        transform: rotate(-45deg);
	left: 50%;
	top: 0;
}


.newsCross span:after{
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	right: 47%;
	top: 0;
}


.newsDetailArea{
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height .5s;
	-o-transition: max-height .5s;
	transition: max-height .5s;
}

.newsChk:checked ~ .newsDetailArea{
	margin-top: 20px;
	max-height: 70em;
	-webkit-transition: max-height .5s;
	-o-transition: max-height .5s;
	transition: max-height .5s;
}

.newsDetailAreaIn{
	margin-left: 150px;
	margin-bottom: 50px;
}

.pdfDl{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	border: 2px solid #fcbe7c;
	width: 240px;
	height: 40px;
	font-size: 20px;
	color: #fcbe7c;
	margin-top: 60px;;
}


.pdfDl:hover{
	color: #fcbe7c;
}


.pdfDl img{
	margin-left: 10px;
}


.newsImgArea{
	margin-top: 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.newsImg {
	-ms-flex-preferred-size: 30%;
	    flex-basis: 30%;
	height: 260px;
	width: 100%;
	object-fit: cover;
	margin-bottom: 12px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #DDD;
}
.newsImg img{
	width: 95%;
	height: 95%;
	-o-object-fit: contain;
	   object-fit: contain;
	font-family: "object-fit: contain;";
}



.pagerArea{
	margin-top: 20px;
	margin-bottom: 20px;
}
.pagerArea ul{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.pager_area li{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;;
	-webkit-box-align: center;;
	    -ms-flex-align: center;;
	        align-items: center;
}

.pager_num{
	color: #ecb250;
	margin-right: 40px;
}


.nextBtn{
	background-color: #ecb250;
	color: #FFF;
	padding: 0 5px;
}


.pager_num.active, a.pager_num.active:hover {
	color: #aaaaaa;
}
.nextBtn:hover a, .nextBtn:hover a span{
	background-color: #aaaaaa;
}


.serviceTtlArea{

}
.serviceTtlArea.ma2{
	margin-top: 30px;
}
.serviceTtlArea.ma2.com{
	margin-top: 80px;
}
.serviceTtlArea.ma3{
	margin-top: 90px;
}

.serviceTtl{
	font-size: 37px;
	letter-spacing: 0.05em;
	font-weight: bold;
	display: block;
	margin-bottom: 40px;

}

.serviceCentence{
	letter-spacing: 0.05em;
	line-height: 36px;
}

.seriviceMainImg{
	margin-top: 50px;
}
.seriviceMainImg > img{
	float: left;
    min-width: 120%;
}

@media screen and (min-width: 1350px){
	html{
		overflow-x: hidden;
	}
}

@media screen and (max-width: 1390px){
	.seriviceMainImg > img {
	    float: none;
	    min-width: 100%;
	}
}
.seriviceMainImg:after{
	content: " ";
	clear: both;
	display: block;
}

.serviceTtlMiniArea{
	margin-top: 50px;
}
.serviceTtlMini{
	font-weight: bold;
	font-size: 20px;
	letter-spacing: 0.05em;
	color: #fb9e3b;
}

.serviceTtlMini.t2{
	display: block;
	margin-bottom: 30px;;
}
.serviceCalenderArea{
	width: 435px;
	margin-top: 50px;
}
.serviceCalenderRow{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	height: 50px;
	border-bottom: 1px solid #e6e6e6;
}
.serviceCalenderRow:first-child{
	border-top: 1px solid #e6e6e6;
}

.serviceCalenderIn{
	-ms-flex-preferred-size: 50%;
	    flex-basis: 50%;
}

.serviceCalenderIn.s2{
	-ms-flex-preferred-size: 100%;
	    flex-basis: 100%;
}

.clDate{
	display: inline-block;
	width: 60px;
}

.s2 .clDate{
	width: 100px;
}
.clDesc{

}

.calenderCapArea{
	margin-top: 20px;
}
.calenderCap{
	letter-spacing: 0.05em;
	line-height: 2.25;
}

.serviceArea{
	scroll-margin-top: 90px;
}
.serviceArea:not(:last-child){
	padding-bottom: 60px;
	border-bottom: 1px solid #e6e6e6;
	margin-bottom: 50px;
}


.serviceImgArea{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin-top: 130px;

}
.serviceImgBoxArea{
	-ms-flex-preferred-size: 30%;
	    flex-basis: 30%;
	margin-bottom: 45px;
}
.serviceImgBox{

}
.serviceImgTtlArea{
	margin-top: 30px;
}
.serviceImgTtl{
	letter-spacing: 0.05em;
	font-size: 20px;
	color: #ecb250;
	font-weight: bold;

}
.serviceImgDescArea{
	margin-top: 20px;
}

.serviceImgDesc{
	letter-spacing: 0.05em;
	line-height: 1.25;
}
.serviceImgDesc.small{
	font-size: 14px;
}

.serviceFlowArea{
	border: 2px solid #fb9e3b;
}

.serviceFlolTtlArea{
	background-color: #fb9e3b;
	padding: 15px 25px;
}
.serviceFlolTtl{
	font-size: 20px;
	font-weight: bold;
	color: #FFF;
}

.serviceFlowAreaIn{
	padding: 15px 25px;
}

.serviceFlowAreaInTtlArea{

}

.serviceFlowAreaInTtl{
	font-size: 20px;
	font-weight: bold;
	color: #fb9e3b;
	margin-bottom: 15px;
}
.serviceFlowAreaInDetailArea{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding: 0 25px 10px 25px;
}
.serviceFlowAreaInDetailArrorw.noneDisp{
	visibility: hidden;
}
.serviceFlowAreaInDetailTxt{
	margin-left: 20px;;
}

.serviceFlowAreaInDetailTxt.smapllP{
	color: #d48399;
}

.cl2 .serviceTtlMini, .cl2 .serviceImgTtl, .cl2 .serviceFlowAreaInTtl{
	color: #d6cb35;
}
.cl2 .serviceFlowArea{
	border-color: #d6cb35;
}
.cl2 .serviceFlolTtlArea{
	background-color: #d6cb35;
}




.cl3 .serviceTtlMini, .cl3 .serviceImgTtl, .cl3 .serviceFlowAreaInTtl{
	color: #d48399;
}
.cl3 .serviceFlowArea{
	border-color: #d48399;
}
.cl3 .serviceFlolTtlArea{
	background-color: #d48399;
}


.cl4 .serviceTtlMini, .cl4 .serviceImgTtl, .cl4 .serviceFlowAreaInTtl{
	color: #85c0cd;
}
.cl4 .serviceFlowArea{
	border-color: #85c0cd;
}
.cl4 .serviceFlolTtlArea{
	background-color: #85c0cd;
}

.rinenArea{
	border: 3px solid #f9be7c;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;

	margin-top: 60px;
}
.rinenAreaIn{
	width: 800px;
}

@media screen and (max-width: 820px){
	.rinenAreaIn {
		width: calc(100% - 20px);
	}
}

.rinenTtlArea{
	margin-top: 30px;
}

.rinenTtl{
	font-size: 24px;
	font-weight: bold;
	color: #f9be7c;
	text-align: center;
}

.rinenDetailArea{
	margin-top: 35px;
}
.rinenDetailArea:last-child{
	margin-bottom: 35px;
}

.rinenDetailTtl{
	font-size: 24px;
	line-height: 36px;
}

.rinenDetailTxt{
	line-height: 36px;
}


.facilityDetailArea{
	margin-top: 60px;
}
.facilityDetailRow{
	border-bottom: 1px solid #e6e6e6;
	min-height: ;
	padding: 20px 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}
.facilityDetailRow:first-child{
	border-top: 1px solid #e6e6e6;
}
.facilityDetailRow.jc-sb .facilityDetailRowTtlArea, .facilityDetailRow.jc-sb .facilityDetailRowDescArea{
	-ms-flex-preferred-size: 20%;
	    flex-basis: 20%;
}

.facilityDetailRowTtlArea{
	-ms-flex-preferred-size: 260px;
	    flex-basis: 260px;

}
.facilityDetailRowTtl{
	font-weight: bold;
}
.facilityDetailRowDescArea{

}
.facilityDetailRowDesc{

}
.facilityDetailRowTable{
	margin: 10px 0;
	border-collapse: collapse;
}
.facilityDetailRowTableTr{

}
.facilityDetailRowTableTh{
	border: 1px solid #e6e6e6;
	padding: 7px 10px;
}
.facilityDetailRowTableTd{
	border: 1px solid #e6e6e6;
	padding: 10px;
}

.forPrice{
}

.forPrice .serviceImgArea{
    margin-top: 0px;
}
.forPrice .serviceImgDescArea{
	margin-top: 10px;
}

.forPrice .serviceImgTtl{
	color: #333333;
}
.forPrice .serviceImgDesc{
	font-size: 20px;
	color: #f9be7c;
	text-decoration: underline;
	font-weight: bold;
}
.forPrice .serviceImgDescArea.ma2{
	margin-top: 20px;
}
.forPrice .serviceImgDescArea.ma2 .serviceImgDesc{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	font-size: 20px;
	color: #f9be7c;
	text-decoration: underline;
	font-weight: bold;
}
.forPrice .serviceImgDescArea.ty2 .serviceImgDesc{
	color: #333333;
	font-weight: normal;
	text-decoration: none;
}

.forPrice .serviceImgDescArea.ma2 .serviceImgDesc img{
	margin-right: 10px;
}

.forPrice .serviceImgDescArea.ty2 .serviceImgDesc.fs2{
	font-size: 18px;
}

.serviceTtlMiniArea .bo{
	font-weight: bold;
	font-size: 20px;
}

.forCompany{
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.forCompany .facilityDetailRowTtlArea{
	-ms-flex-preferred-size: auto;
	    flex-basis: auto;

}

.forCompany .facilityDetailRowDescArea{
	text-align: center;
}
.forCompany .facilityDetailRowDesc{
	text-align: center;
	text-decoration: underline;
}
.coution{
	letter-spacing: -0.1em;
}

.facilityDetailRow.mb20{
	margin-bottom: 20px;
}


.aboutCol.contactZone .detailArea{
	display: block;
	text-align: center;
}
.topArea.aboutCol.contactZone .detailArea{
	    margin-top: 55px;
    margin-bottom: 0;
}


.aboutCol.contactZone h4{
	font-weight: bold;
	margin-top: 20px;
}

.topArea.aboutCol.contactZone h4{
	font-weight: normal;
}

.contactZone p{
	font-size: 48px;
	letter-spacing: 0.05em;
}

.topArea.contactZone p{
    font-size: 40px;
    letter-spacing: 0.05em;
    font-weight: normal;
}
@media screen and (max-width: 768px){

	.topArea.contactZone p{
	    font-size: 20px;
	}

	.topArea.aboutCol.contactZone .detailArea {
	    margin-top: 20px;
	}

}
.contactZone span{
	font-size: 30px;
	letter-spacing: 0.05em;
}


@media screen and (max-width: 1500px){
	.containerL{
		width: 100%;
		padding-left:10px;
		padding-right:10px;
	}
}


@media screen and (max-width: 1024px){
	.footerBoxList a {
	    font-size: 16px;
	}
}
.spShowFooter{
		display: none;
}
.tx-c{
	text-align: center;
}



@media screen and (max-width: 974px){
	.footerBoxList ul li {
	    margin-bottom: 6px;
	    margin-left: 0;
	    display: block;
	}
	.footerBoxList ul li.parent {
	    margin-left: 0;
	    margin-bottom: 15px;
	    margin-top: 10px;
	}
	.footerBoxList a {
	    font-size: 14px;
	}
	.footerBoxList ul li.parent a{
	    font-size: 16px;
	}
	.footerBoxList ul li a{
		display: block;
		position: relative;
	}
	.footerBoxList ul li a i{
		position: absolute;
		right: 0;
		top: 4px;
		color: #f9be7c;

	}
	.footerBoxList:last-child {
	    padding-bottom: 0;
	    margin-right: 20px;
	}

	.footerArea{
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	.footerBox.fl {
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	    width: 100%;
	}
	.footerBoxList{
		margin-right: 0;
		padding-bottom: 10px;
		margin-bottom: 10px;
		border-bottom: 1px solid #dad8ce;
	}
	li.bom{
		display: block;
		padding-bottom: 10px;
		margin-bottom: 10px;
		border-bottom: 1px solid #dad8ce;
	}

	.od1{
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
	}
	.od2{
		-webkit-box-ordinal-group: 3;
		    -ms-flex-order: 2;
		        order: 2;
		margin: 20px 20px 0px 20px;
	}
	.footerBox.od2{
		margin: 20px 20px 0px 20px;
	}

	.footerBoxList{
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}

	.spShowFooter{
		display: block;
	}

	.newsDetailAreaIn {
	    margin-left: 0;
	}
}


@media screen and (max-width: 890px){
	.container{
		width: 100%;
		padding: 0 20px;
	}
	.linkAreaBoxInW h3 {
    	font-size: 24px;
	}
	.newsImg{
		-ms-flex-preferred-size: 50%;
		    flex-basis: 50%;
	}
	.serviceImgBoxArea{
		-ms-flex-preferred-size: 50%;
		    flex-basis: 50%;
	}
	.contactFormArea{
	    padding: 40px 30px;
	}
	.contactFormTtlArea {
	    -ms-flex-preferred-size: 240px;
	        flex-basis: 240px;
	}
	.formTitle {
	    -ms-flex-preferred-size: 200px;
	        flex-basis: 200px;
	}
	.formRequire {
		-ms-flex-preferred-size: 60px;
		    flex-basis: 60px
	}
	.contactForm{
		-ms-flex-preferred-size: calc(100% - 240px);
		    flex-basis: calc(100% - 240px);
	}

}

@media screen and (max-width: 768px){
	* {
    	font-size: 14px;
	}


	.serviceTtlArea.ma2.com {
	    margin-top: 40px;
	}

	.aboutBoxTtl h2{
		font-size: 32px;
		letter-spacing: 0.16em;
		line-height: 34px;
	}
	.aboutBoxTtl img {
	    margin: 0 auto 20px auto;
	}
	.aboutBoxTtl.mb2 {
	    margin-bottom: 20px;
	}
	.linkAreaBoxInW h3 {
    	font-size: 24px;
	}
	.linkAreaBoxInW p {
    	font-size: 16px;
    	line-height: 1.33;
	}

	.linkAreaBoxInW p {
	    margin-bottom: 30px;
	}

	.linkAreaBox {
	    height: 410px;
	}

	.linkAreaWrap2col,.about2col {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	.linkAreaWrap2col .linkAreaBox, .about2col .aboutCol {
	    -ms-flex-preferred-size: 100%;
	        flex-basis: 100%;
	    margin-bottom: 30px;
	}
	.aboutCol h4 {
	    font-size: 24px;
	    text-align: center;
	}
	.aboutCol .detailArea {
	    height: auto;
	    width: 80%;
	    margin: 0 auto 20px auto;
	}

	.newsTtl{
		font-size: 16px;
	}

	.newsImg{
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}

	.facilityDetailRow{
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	.facilityDetailRowTtlArea, .facilityDetailRowDescArea{
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}
	.serviceTtl{
		font-size: 28px;
	}
	.serviceTtl.s2 {
	    font-size: 24px;
		margin-bottom: 20px;
	}
	.serviceCentence {
	    line-height: 24px;
	}
	.topTitleText{
		font-size: 32px;
	}
	.facilityDetailRow.jc-sb{
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		text-align: left;
	}
	.facilityDetailRow.jc-sb .facilityDetailRowTtlArea, .facilityDetailRow.jc-sb .facilityDetailRowDescArea{
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
		text-align: left;
		margin-bottom: 20px
	}
	.contactArea{
	    padding-top: 50px;
    	padding-bottom: 75px;
	}

	.serviceImgBoxArea{
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}
	.contactFormWrapper{
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}

	.contactFormTtlArea {
  	  -ms-flex-preferred-size: 100%;
  	      flex-basis: 100%;
	    -webkit-box-pack: justify;
	        -ms-flex-pack: justify;
	            justify-content: space-between;
	    min-height: auto;
	}
	.formTitle {
	    -ms-flex-preferred-size: 200px;
	        flex-basis: 200px;
	}
	.formRequire {
		-ms-flex-preferred-size: 60px;
		    flex-basis: 60px
	}
	.contactForm{
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}

	.rinenDetailTtl {
	    font-size: 18px;
	    line-height: 25px;
	}


	.newsImgArea{
		height: 350px;
		overflow-y: scroll;
		border: 2px solid #ddd;
		padding: 10px;
	}
	.linkAreaBoxIn{
		height: 440px;
	}
	.linkAreaBoxInW.m2 h3 {
	    margin-bottom: 80px;
	}
	.topBg > img {
	    -o-object-position: 79%;
	       object-position: 79%;
	}
	.topBgTitle {
		top: 170px;
	    width: 60%;
	}
	#slickArea {
	    height: 440px;
	    margin-bottom: 45px;
	}

	.contactBtn.ty4.footer{
		height: 48px;
	}
	.aboutBoxBox.spMa {
	    padding: 0 0 80px 0;
	}
	.tag.tagNews {
		margin-bottom: 10px;
	}
	.newsListBox a {
	    font-size: 18px;
	}
	.aboutCol h4 {
	    margin-bottom: 0px;
	}
	.about2col .aboutCol {
	    -ms-flex-preferred-size: 100%;
	        flex-basis: 100%;
	    margin-bottom: 15px;
	    padding-bottom: 15px;
	    border-bottom: 1px solid #dad8ce;
	}
	.about2col .aboutCol:last-child {
	    border-bottom: none;
	}
	.contactFormMin.sl2{
		-ms-flex-preferred-size: 40%;
		    flex-basis: 40%
	}
	.contactFormMin{
		margin-bottom: 0;
	}
	.topTtl {
		margin-top: 60px;
	    height: 200px;
	}
	.facilityDetailArea {
	    margin-top: 20px;
	}
	.facilityDetailRowTtl {
	    margin-bottom: 10px;
	}

	.serviceCalenderArea {
	    width: 100%;
	}
	.forPrice .serviceImgDescArea.ty2 .serviceImgDesc.fs2 {
	    font-size: 16px;
	}

	.clDate{
		width: 100%;
	}
	.clDesc {
		margin-left:20px;
		width: 100%;
	}

	.contactZone p{
		font-size: 28px;
		letter-spacing: 0.05em;
	}

	.contactZone span{
		font-size: 18px;
		letter-spacing: 0.05em;
	}














	.spHide{
		display: none;
	}

	.spShow{
		display: block;
	}

}

@media screen and (max-width: 425px){
	*{
	     font-size:14px;
	     -webkit-text-size-adjust: 100%;
	     -webkit-box-sizing:border-box;
	             box-sizing:border-box;
	}
	.aboutBoxTtl h2{
		font-size: 24px;
		letter-spacing: 0.16em;
		line-height: 34px;
	}
	.linkAreaBoxInW h3 {
	    font-size: 20px;
	}
	.aboutCol h4 {
	    font-size: 20px;
	    text-align: center;
	}
	.newsListBox a > time {
		display: block;

	}
	.footerBoxList{
		text-align: left;
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
    	margin: 0 20px;
	}
	.footerArea{
		padding-bottom: 20px;
	}
	.posBR{
		width: 30%;
	}
}

button.sortNewsBoxb.active {
    background-color: #107b4f;
    border: none;
}