@charset "UTF-8";

/* Service
------------------------------------------------------------*/

.slide.h2Area{
	background: url(../../../uploads/service/h2_bg-2.jpg) no-repeat center bottom 20%;
	background-size: cover;
}
.slide#contents{
	background: #ffffff url(../../../uploads/common/contents_bg-wh.jpg) repeat center top;
}

ul.blc2.serviceMenu{
align-items: flex-start;
}
ul.blc2.serviceMenu > li,
div.serviceRec{
	display: flex;
	justify-content: center;
	position: relative;
	text-align: center;
	background: rgba(255,255,255,0.86);
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;	
	border-radius: 5px;
	margin-bottom: 45px;
	-moz-box-shadow: 0 2px 4px 3px rgba(0,0,0,0.1);
	-webkit-box-shadow: 0 2px 4px 3px rgba(0,0,0,0.1);
	-o-box-shadow: 0 2px 4px 3px rgba(0,0,0,0.1);
	-ms-box-shadow: 0 2px 4px 3px rgba(0,0,0,0.1);
}
ul.blc2.serviceMenu li div.serviceInfo,
div.serviceRec div.serviceInfo{
	width: 100%;
	padding: 30px 30px 45px 30px;
	font-size: 92%;
}
ul.blc2.serviceMenu li div.serviceIcon,
div.serviceRec div.serviceIcon{
	margin-bottom: 15px;
	font-size: 150%;
	font-weight: bold;
}
.blc2.serviceMenu li div.serviceIcon img,
div.serviceRec div.serviceIcon img{
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-o-border-radius: 50%;
	-ms-border-radius: 50%;	
	border-radius: 50%;
	background: #333333;
	width: 50px;
	height: 50px;
	padding: 5px;
	vertical-align: middle;
	margin-left: 5px;
	margin-right: 5px;
}
ul.blc2.serviceMenu li h4,
div.serviceRec h4{
	font-weight: bold;
	font-size: 124%;
	line-height: 1.5em;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #333333;
}
ul.blc2.serviceMenu li p.serviceDetail{
	text-align: left;
}
div.serviceRec p.serviceDetail{
	text-align: left;
}
div.serviceRec div.serviceInfo h5,
ul.blc2.serviceMenu li h5{
	font-size: 124%;
	margin-bottom: 30px;
}
div.serviceRec div.serviceInfo h5:before,
ul.blc2.serviceMenu li h5:before{
	content: "　";
	display: block;
	margin-bottom:  30px;
	font-size: 200%;
	border-bottom: 1px solid #BAAD4D;
	height: 1px;
	width: 30px;
	margin-left: auto;
	margin-right: auto;
}
ul.service_spec{
	background: #f9f7f5;
	padding: 20px 30px;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}
ul.blc2.serviceMenu li ul.service_spec{
	width: 100%;
}
ul.service_spec li{
	text-indent: -26px;
	padding: 10px 0 10px 26px;
}
ul.service_spec li:before{
	content:" ";
	display:inline-block;
	width: 16px;
	height: 20px;
	margin-right: 10px;
	background:url(../../../uploads/common/ic_check.png) no-repeat left center;    
    background-size:contain;
	vertical-align:middle;
}
ul.service_spec.unchecked-spec li:before{
	content:" ";
	display:inline-block;
	width: 16px;
	height: 20px;
	margin-right: 10px;
	background:url(../../../uploads/common/ic_check-unchecked.png) no-repeat left center;    
    background-size:contain;
	vertical-align:middle;
}
ul.service_spec.option-spec li:before{
	content:" ";
	display:inline-block;
	width: 16px;
	height: 20px;
	margin-right: 10px;
	background:url(../../../uploads/common/ic_plud.png) no-repeat left center;    
    background-size:contain;
	vertical-align:middle;
}
ul.service_spec.option-spec li:before{
	content:" ";
	display:inline-block;
	width: 16px;
	height: 20px;
	margin-right: 10px;
	background:url(../../../uploads/common/ic_plus.png) no-repeat left center;    
    background-size:contain;
	vertical-align:middle;
}
ul.blc2.serviceMenu li div.serviceInfo p.clientType,
div.serviceRec div.serviceInfo p.clientType{
	background: #229b9f;
	color: #ffffff;
	padding: 1px 2px;
	font-size: 86%;
}
ul.blc2.serviceMenu li div.serviceInfo p.attention-matters,
div.serviceRec div.serviceInfo p.attention-matters{
	background: #ea5520;
	color: #ffffff;
	padding: 1px 2px;
	font-size: 86%;
}
ul.blc2.serviceMenu li div.price,
div.serviceRec div.price{
	content:" ";
	position: absolute;
	bottom: 0;
	width: 100%;
	background: #333333;
	font-weight: bold;
	color: #ccecf8;
	font-size: 150%;
	padding: 10px 0;
	border-top: 5px solid #BAAD4D;
	-moz-border-radius: 0 0 5px 5px;
	-webkit-border-radius: 0 0 5px 5px;
	-o-border-radius: 0 0 5px 5px;
	-ms-border-radius: 0 0 5px 5px;	
	border-radius: 0 0 5px 5px;
	line-height: 1.5em;
}

/*
ul.blc2.serviceMenu li div.cliType,
div.serviceRec div.cliType{
	position: absolute;
	display: inline;
	background: #890002;
	color: #ffffff;
	padding: 8px 0 8px 10px;
	height: 30px;
	left:  -10px;
	top:  10px;
	font-size: 86%;
	text-align: left;
}
ul.blc2.serviceMenu li div.cliType:before,
div.serviceRec div.cliType:before{
    content: " ";
    position: absolute;
    top: 100%;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 10px 10px 0;
    border-color: transparent;
    border-right-color: #650001;
}
ul.blc2.serviceMenu li div.cliType:after,
div.serviceRec div.cliType:after{
    content: " ";
    position: absolute;
    top: 0px;
    left: 100%;
    width: 0;
    height: 0;
    border-width: 15px 7px;
    border-style: solid;
    border-color: #890002;
    border-right-color: transparent;
}
*/

.btn_circle:after {
	-webkit-box-shadow:rgb(51, 51, 51) 0px 0px 0 3px;
	-moz-box-shadow:rgb(51, 51, 51) 0px 0px 0 3px ;
	box-shadow: rgb(51, 51, 51) 0px 0px 0 3px;
}

/* 詳細の開閉 */
.accordion-003 {
    max-width: 500px;
    margin-bottom: 7px;
}
.accordion-003 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em;
    color: #333333;
    font-weight: 600;
    cursor: pointer;
    border-bottom: 2px solid #d6dde3;
}
.accordion-003 summary::-webkit-details-marker {
    display: none;
}

.accordion-003 summary::before,
.accordion-003 summary::after {
    width: 3px;
    height: .9em;
    border-radius: 5px;
    background-color: #333333b3;
    content: '';
}

.accordion-003 summary::before {
    position: absolute;
    right: 1em;
    rotate: 90deg;
}

.accordion-003 summary::after {
    transition: rotate .3s;
}

.accordion-003[open] summary::after {
    rotate: 90deg;
}

.accordion-003 p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    color: #333333;
    transition: transform .5s, opacity .5s;
}

.accordion-003[open] p {
    transform: none;
    opacity: 1;
}


/*****************************************/
/*				 Tablet					 */
/*****************************************/

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

ul.blc2.serviceMenu li p.serviceDetail,
div.serviceRec p.serviceDetail{
	text-align: left;
}
	
ul.service_spec{
	padding: 20px 30px;
	width: 100%;
}


}

/*****************************************/
/*				 Mobile					 */
/*****************************************/

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

ul.blc2.serviceMenu li div.serviceInfo,
div.serviceRec div.serviceInfo{
	padding: 30px 20px;
}
	
div.serviceRec div.serviceInfo ul.service_spec{
	padding: 15px 20px;
}
	
	
}