/*
カスタムパーツ
**************************************/
/**---s:テキスト領域---**/
.textArea {
	margin: 0 auto 30px;
}
.tx-center {
	text-align:center;
}

.info-box{
	margin: 0 auto 30px;
	border:#ddd 1px solid;
	background: #fdfdfd;
	padding:20px;
}

/**---s:画像設置---**/
.img-center {
	text-align:center;
	margin: 0 auto 20px;
}
.img-left {
	text-align:left;
	margin: 0 auto 20px;
}
.img-right {
	text-align:right;
	margin: 0 auto 20px;
}

/**---s:画像+テキスト(テキスト折り返し)---**/
.img-txt {
    margin-bottom: 20px;
}
.img-txt.left img {
	float:left;
	margin: 0 20px 10px 0;
}
.img-txt.right img {
	float:right;
	margin: 0 0 10px 20px;
}

/**---s:共通バナー---**/
.banner{
    background: #382628;
    margin-bottom:30px;
}

.banner .banner_list{
    padding: 0;
    margin: 0 auto;
    display: table;
    width: 100%;
}

.banner .banner_list li{
    display: table-cell;
    padding: 18px 0;
    background: #382628;
    min-height:98px;
    vertical-align: middle;
}
.banner .banner_list li:first-child{
    padding-left:40px;
    padding-right:40px;
    border-right:#746869 1px dotted;
}
.banner .banner_list li:last-child{
    padding-left:40px;
}
.banner .tel_cont{
    background:url(../images/banner_tel.jpg) no-repeat 0 center #382628;
    padding-left: 70px;
    margin-bottom: 0px;
    /* min-height: 80px; */
    color:#fff;
}
.banner .tel_cont .tel{
    font-size: 45px;
    line-height: 45px;
}
.banner .tel_cont .hours{
    font-size:13px;
    line-height: 1.6;
}
.banner .tel_cont .tel a{
    color:#fff;
}
.banner .link_cont{
    padding:30px 0;
}
.banner .link_cont a{
    background: url(../images/banner_form.png) no-repeat 0 0 #382628;
    /* padding-top: 20px; */
    padding-left: 68px;
    margin-bottom: 0px;
    min-height: 41px;
    color:#fff;
    text-decoration:none;
    font-size:22px;
    display: inline-block;
}
@media (max-width: 736px) {

	/**---s:画像+テキスト(テキスト折り返し)---**/
	.img-txt {
	    margin-bottom: 20px;
	}
	.img-txt.left img {
		float:none;
		margin: 0 auto 10px;
		display: block;
	}
	.img-txt.right img {
		float:none;
		margin: 0 auto 10px;
		display: block;
	}
	.img-txt{
		text-align: center;
	}
	.img-txt .richtext{
		text-align: left;
	}

	.banner .banner_list{
	    display: block;
	    text-align: left;
	}

	.banner .banner_list li{
    	padding: 18px 0 0;
    	min-height: auto;
	}
	.banner .banner_list li:first-child{
	    padding-left:0px;
	    padding-right:0px;
	    border-right:none;
	    width:100%;
	}
	.banner .banner_list li:last-child{
	    padding:0px;
	}
}

/*共通style 四隅アイコン*/
.corner_icon{
    position:relative;
}
.c_icon{
    position:absolute;
    min-height:100%;
    min-width:15px;
    content:'';
    top:0;
    left:0;
}
.corner_icon .c_icon:last-child{
    top:0;
    right:5px;
    left:initial;
}
.c_icon:before{
    position:absolute;
    content:'';
   min-height:7px;
    min-width:7px;
    background:#fffcf6;
    top:5px;
    left:5px;
}
section.bg_mode .c_icon:before,
section.bg_mode .c_icon:after{
    background: #c2a391;
}
.c_icon:after{
    position:absolute;
    content:'';
    min-height:7px;
    min-width:7px;
    background:#fffcf6;
    top:initial;
    left:5px;
    bottom:5px;
}
/**---s:readmoreボタン---**/
.more_btn{
    text-align:center;
    padding:0 0 30px;
}
.more_btn a{
    display:inline-block;
    padding: 15px 10px 18px;
	line-height: 1;
	background: #c2a391;
	color: #fff;
	text-decoration: none;
	width:340px;
	box-sizing:border-box;
	font-family: 'Dosis';
	font-size:24px;
	position:relative;
}
.bg_mode .more_btn a{
    background: #fff;
	color: #9e7965;
}
.more_btn a:after{
    position:absolute;
    content:'>';
    font-family: 'Dosis';
	font-size: 24px;
	color: #fff;
	top :16px;
	right:100px;
}
.bg_mode .more_btn a:after{
	color: #c2a391;
}
.more_btn a:hover{
    opacity:0.8;
}
/**---s:矢印つきリンク---**/
.arrow-link {
	margin: 0 auto 20px;
}
.arrow-link a {
	display: inline-block;
	padding-left: 10px;
	position: relative;
}
.arrow-link a:before {
	content: '>';
	position: absolute;
	top:3px;
	left: 0;
}
/**---s:ボタン風リンク---**/
.btn-link {
	margin: 0 auto 20px;
	text-align: center;
}
.btn-link a {
	display: inline-block;
	padding:12px;
	line-height: 1;
	background: #382628;
	letter-spacing: 2px;
	color: #fff;
	text-decoration: none;
	border: #382628 1px solid;
	width:200px;
	box-sizing:border-box;
}
.btn-link a:hover {
	background: #fff;
	color: #382628;
	text-decoration: none;
	border: #382628 1px solid;
}
.btn-link.arrow a{
    position: relative;
}
.btn-link.arrow.right a:after{
    content: '>';
	position: absolute;
	top:11px;
	right: 10px;
	color: #fff;
}

.btn-link.arrow.left a:after{
    content: '>';
	position: absolute;
	top:11px;
	left: 10px;
	color: #fff;
}
.btn-link.arrow.right a:hover:after,
.btn-link.arrow.left a:hover:after{
	color: #382628;
}
/**---s:タイトル+テキスト+画像+ボタンのセットコンテンツ---**/
.set-box {
	margin: 0 auto 20px;
}
.set-box .ttl{
	margin: 0 auto 10px;
	font-weight: bold;
	font-size: 120%;
	text-align: left;
}
.set-box .img{
	margin: 0 auto 10px;
	text-align: center;
}
.set-box .txt{
	margin: 0 auto 10px;
	text-align: left;
}
.set-box .btn{
	margin: 0 auto;
	text-align: center;
}
.set-box .btn a{
	display: inline-block;
}

/**---s:横並びコンテンツ2列3列4列---**/
.sbs-wrap{
	margin: 0 auto 20px;
}
.sbs-wrap.box2 {
	margin: 0 0 0 -5%;
}
.sbs-wrap.box2 .set-box{
	width: 45%;
	float: left;
	margin: 0 0 0 5%;
}
.sbs-wrap.box3　{
	margin: 0 0 0 -3%;
}
.sbs-wrap.box3 .set-box{
	width: 30.5%;
	float: left;
	margin: 0 0 0 2%;
	padding-bottom: 10px;
}
.sbs-wrap.box4　{
	margin: 0 0 0 -1%;
}
.sbs-wrap.box4 .set-box{
	width: 24%;
	float: left;
	margin: 0 0 0 1%;
}
@media screen and (max-width: 736px){
	.sbs-wrap{
		margin: 0 auto 20px;
	}
	.sbs-wrap.box2 {
		margin: 0 auto 10px;
	}
	.sbs-wrap.box2 .set-box{
		width: 100%;
		float: none;
		margin: 0 auto 10px;
	}
	.sbs-wrap.box3　{
		margin: 0 auto 10px;
	}
	.sbs-wrap.box3 .set-box{
		width: 100%;
		float: none;
		margin: 0 auto 10px;
	}
	.sbs-wrap.box4　{
		margin: 0 0 0 -1%;
	}
	.sbs-wrap.box4 .set-box{
		width: 100%;
		float: none;
		margin: 0 0 0 0%;
	}
}
/**---s:ページ内リンク---**/
.page-link {
	margin: 0 auto 30px;
}
.page-link ul {
	margin: 0 0 0 -5%;
}
.page-link ul li{
	width: 30%;
	float: left;
	margin: 0 0 10px 3%;
	border: #ddd 1px solid;
	border-left:#ddd 15px solid;
	position: relative;
}
.page-link ul li:before {
	content: '';
	min-width: 15px;
	min-height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../images/common/page-link-icon.png) center center no-repeat;
}
.page-link ul li a{
	display: block;
	box-sizing: border-box;
	padding: 10px 10px 10px 40px;
	width: 100%;
	text-decoration: none;
	color: #333;
}
.page-link ul li:hover{
	border: #F26964 1px solid;
	border-left:#F26964 15px solid;
}
.page-link ul li:hover a{
	text-decoration: none;
	color: #F26964;
}
/**---s:NEWSコンテンツ---**/
.news_list {
    
}
.news_list li,
.news_list article{
    padding: 0 0 10px;
    margin:0 auto 10px;
    border-bottom: #ccc 1px solid;
}
.news_list .date{
    width:15%;
    float:left;
}
.news_list .ttl{
    width:80%;
    float:right;
}
@media screen and (max-width: 736px){
	.news_list .date{
	    width:96%;
	    padding:0 2%;
	    float:none;
	    text-align: left;
	}
	.news_list .ttl{
	    width:96%;
	    padding:0 2%;
	    float:none;
	    text-align: left;
	}
	.areaR .ttl,
	.areaL .ttl,
	.set-box .ttl{
		text-align: left;
	    width:96%;
	    padding:0 2%;
	}
	.areaR .date,
	.areaL .date,
	.set-box .date{
		text-align: left;
	    width:96%;
	    padding:0 2%;
	}
	.set-box .txt{
		margin: 0 auto 10px;
	    width:96%;
	    padding:0 2%;
		text-align: left;
	}
}
/**---s:FAQコンテンツ---**/
.faq-cont {
	border: #ddd 1px solid;
	margin: 0 auto 15px;
	padding: 10px;
}
.faq-cont .q-cont{
	background: url(../images/common/faq-q.png) 0 0 no-repeat;/*25px-30px*/
	padding: 14px 6px 0 40px;
	border-bottom: #333 1px solid;
	margin-bottom: 15px;
	color: #333;
	font-weight: bold;
	font-size: 16px;
	line-height: 1.2;
}
.faq-cont .a-cont{
	background: url(../images/common/faq-a.png) 0 0 no-repeat;/*25px-25px*/
	padding: 0 0 0 40px;
}

@media screen and (max-width: 736px){

	.faq-cont {
		border: none;
		margin: 0 auto 15px;
		padding: 10px;
	}

	.faq-cont .q-cont{
		background: url(../images/common/faq-q.png) 0 0 no-repeat;/*25px-30px*/
		padding: 14px 6px 0 40px;
		border-bottom: #333 1px solid;
		margin-bottom: 15px;
		color: #333;
		font-weight: bold;
		font-size: 16px;
		line-height: 1.2;
	}
	.faq-cont .a-cont{
		background: url(../images/common/faq-a.png) 0 0 no-repeat;/*25px-25px*/
		padding: 0 0 0 40px;
	}

}

/**---s:STEP系コンテンツ---**/
ol.step-cont li{
	margin: 0 auto 30px;
	position: relative;
	padding: 0 0 0 40px;
}
ol.step-cont li:after{
	content: '';
	min-width: 100%;
	min-height: 100%;
	position: absolute;
	bottom: -10px;
	left: 0;
	background: url(../images/common/step-cont-arrow.png) center center no-repeat;
}
ol.step-cont li .txt{
	width: 60%;
	float: left;
}
ol.step-cont li .img{
	width: 30%;
	float: right;
}
ol.step-cont li:nth-child(1){background: url(../images/common/step-cont-1.png) 0 0 no-repeat;}
ol.step-cont li:nth-child(2){background: url(../images/common/step-cont-2.png) 0 0 no-repeat;}
ol.step-cont li:nth-child(3){background: url(../images/common/step-cont-3.png) 0 0 no-repeat;}
ol.step-cont li:nth-child(4){background: url(../images/common/step-cont-4.png) 0 0 no-repeat;}
ol.step-cont li:nth-child(5){background: url(../images/common/step-cont-5.png) 0 0 no-repeat;}
ol.step-cont li:nth-child(6){background: url(../images/common/step-cont-6.png) 0 0 no-repeat;}
ol.step-cont li:nth-child(7){background: url(../images/common/step-cont-7.png) 0 0 no-repeat;}
ol.step-cont li:nth-child(8){background: url(../images/common/step-cont-8.png) 0 0 no-repeat;}
ol.step-cont li:nth-child(9){background: url(../images/common/step-cont-9.png) 0 0 no-repeat;}
ol.step-cont li:nth-child(10){background: url(../images/common/step-cont-10.png) 0 0 no-repeat;}


/**---s:POINT系コンテンツ---**/
.point-box {
	margin: 0 auto 30px;
	border: #F26964 3px solid;
	padding: 10px;
}
.point-box ul li{
	margin: 0 auto 8px;
	padding: 3px 0 0 40px;
	background: url(../images/common/point-check-icon.png) 0 0 no-repeat;
}