/* ------------------------------------------------------------------------------------------------------------------------------------ common */

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */

div.facility-header {
	position: relative;
}

div.facility-header div.facility-title {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate( -50%, -50%);
	-webkit-transform: translate( -50%, -50%);
		padding: 2em 1.5em;
	background: rgba(255,255,255,0.85);
	
	min-width: 280px; /* */
	
}

div.facility-header div.facility-title:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 5px;
	content: "";	
}

body.care-supported-aged-home div.facility-header div.facility-title:before { background: #9fdddd; }
body.rental-house div.facility-header div.facility-title:before { background: #f5c6a6; }
body.aged-home div.facility-header div.facility-title:before { background: #e2d76b; }
body.care-house div.facility-header div.facility-title:before { background: #7fb896; }
body.group-home div.facility-header div.facility-title:before { background: #cd99b3; }
body.day-service div.facility-header div.facility-title:before { background: #73bbd2; }
body.long-term-care-support-provider div.facility-header div.facility-title:before { background: #a19778; }

div.facility-header div.facility-title img {
	
	width: 180px;
	height: 320px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	
	margin-bottom : 1em;
}

div.facility-header div.facility-title div.en {
	display: block;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1.4rem;
	letter-spacing: 0.3em;
	text-align: center;
	
	padding-left: 1em;
	padding-right: 1em;
}

div.facility-header div.facility-title div.en h2 {
	font-size: 1.4rem;
	/* word-break: break-all; */
}

@media only screen and (max-width: 768px) {	
	div.facility-header div.facility-title {
		position: relative;
		top: 0;
		left: 0;
		transform: none;
		-webkit-transform: none;
		
		padding: 1em 0;
		background: none;
	}
	
	div.facility-header div.facility-title div.en {
		display: block;
		text-align: center;
	}
	
	div.facility-header div.facility-title img {
		/* width: 80px; */
		height: auto;
	}


}


div.facility-header div.facility-title {
	
  -webkit-animation-name: fadeIn;
          animation-name: fadeIn;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  /* -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite; */
  overflow: hidden;
		 
}


@keyframes fadeIn {
  0% {
	  opacity: 0;
  }

  50% {
	  opacity: 0;
  }

  100% {
	  opacity: 1;
  }

}






div.facility-header {
	position: relative;
}

div.facility-header div.image img {
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	display: block;
}


/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */

div.page-header {
	position: relative;
	
	padding: 0 100px;
	box-sizing: border-box;
	
	min-height: 150px;
	
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}




div.page-header div.title {
	position: absolute;
	top: 50%;
	transform: translate( 0, -50%);
	-webkit-transform: translate( 0, -50%);
	
	padding: 2em 1.0em;
	background: rgba(255,255,255,1);
	
	font-size: 3.0rem;
	font-weight: bold;
	letter-spacing: 0.3em;
	white-space: nowrap;
    transition: all .2s ease-in;
	
	
}

div.page-header div.title.left { left: 0; }
div.page-header div.title.right { right: 0; }

div.page-header div.title h1 {
	font-size: 3.0rem;
}

div.page-header div.title img {
	
	/* width: 120px;
	height: 320px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	
	margin-bottom : 1em; */
}

div.page-header div.title div.en {
	display: block;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1.4rem;
	letter-spacing: 0.3em;
	font-weight: normal;
}

div.page-header div.title div.en h2 {
	font-size: 1.4rem;
}

div.page-header div.title div.profile {
	display: block;
	font-size: 1.6rem;
	letter-spacing: 0.3em;
	font-weight: normal;
	
	margin-top: 1em;
}

div.page-header div.title div.profile h2 {
	font-size: 1.6rem;
}

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

	div.page-header div.title {
		background: rgba(255,255,255,0.77);
	}	
}


@media only screen and (max-width: 768px) {	
	
	div.page-header {
		padding: 1em;
	}
	
	div.page-header div.title {
		text-align: left;
		background: none;
		font-weight: bold;
		left: 0;
		padding: 0;
		position: relative;
		top: 0;
		transform: none;
		-webkit-transform: none;
		width: 100%;
		
		margin-bottom: 1em;
		letter-spacing: 0.1em;
	
		white-space: normal;
		text-align: left;
		line-height: 1.5;
		
	}	
	
}



/* ニュース 個別記事 */


div.page-header.news {
	position: relative;
	
	padding: 1em;
	box-sizing: border-box;
	border-bottom: 2px solid #f0f0f0;
	
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

div.page-header.news div.title {
	background: none;
	position: relative;
	white-space: normal;
	transform: none;
	-webkit-transform: none;
	padding: 1em 0;
	box-sizing: border-box;
}

div.page-header.news div.title div.description h2 {
	margin-top: 1em;
	font-size: 1.6rem;
	letter-spacing: 0;
}

div.page-header.news div.title div.update {
	margin-top: 1em;
	font-size: 1.6rem;
	letter-spacing: 0;
}






div.page-header div.image img {
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	display: block;
	
}






/* ------------------------------------------------------------------------------------------------------------------------------------ .detail */

.detail {
	/* padding: 1em 1em 2em; */
	box-sizing: border-box;
	
	max-height: 100%; /* chrome font-size */
	/* background: #fff; */
	/* font-size: 1.8rem; */
	font-size: 2.0rem;
	line-height: 2;
	
	width: 100%;
	
	max-width: 1000px;
	
	margin-left: auto;
	margin-right: auto;
	
	/* background: #f0f0f0; */
	
	margin-bottom: 40px;
	
	
	
	font-family: "游ゴシック",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif,Meiryo,"メイリオ";
	
}
	
	
	
}

@media only screen and (max-width: 768px) {	
	.detail {
		font-size: 1.6rem;
	}
}

.detail a {
	color: #555;
	text-decoration: underline;
	position: relative;
}

.detail a:hover {
	text-decoration: none;
}

.detail a.arrow {
	position: relative;
	display: inline-block;
	padding: 0 0 0 1em;
	color: #343434;
	vertical-align: middle;
	text-decoration: none;
}

.detail a.arrow::before {
	width: 4px;
	height: 4px;
	margin: auto;
	position: absolute;
	top: 50%;
	left: 0;
	bottom: 0;
	content: "";	
	border-top: 1px solid #343434;
	border-right: 1px solid #343434;
	-webkit-transform: translate( 0, -50%) rotate(45deg);
	transform: translate( 0, -50%) rotate(45deg);
    transition: all .2s ease-in;
}

.detail a.arrow:hover {
}

.detail a.arrow:hover::before {	
	border-top: 1px solid #343434;
	border-right: 1px solid #343434;
	left: 5px;
}

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

@media only screen and (max-width: 768px) {	
	.detail a[href^="tel:"] {
		pointer-events: auto;
		color: #023156;
		text-decoration: underline;
	}
	
	.detail a[href^="tel:"]:hover {
		text-decoration: none;
	}
	
	.detail a[href^="mailto:"] {	
	 	word-break: break-all;
		word-wrap: break-word;
		white-space: normal;		
	}
}

/*
a:after {
	position: absolute;
	top: 50%;
	right: 15px;
	left: inherit;

	display: block;

	width: 5px;
	height: 5px;
	margin-top: -5px;

	content: '';
	transition: all .2s ease-in-out;
	-webkit-transform: rotate(45deg);
	   -moz-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		 -o-transform: rotate(45deg);
			transform: rotate(45deg);

	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	background: none;
}
*/

/* ------------------------------------------------------------------------------------------------------------------------------------ setting */

.detail .fl {
	float: left;
}

.detail .fr {
	float: right;
}

.detail .center {
	margin-left: auto;
	margin-right: auto;
}

.detail .tc {
	text-align: center;
}

.detail .tl {
	text-align: left;
}

.detail .tr {
	text-align: right;
}

.detail .vt {
	vertical-align: top;
}

.detail .vm {
	vertical-align: middle;
}

.detail .vb {
	vertical-align: bottom;
}

.detail img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

/* .detail .fs1 { font-size: 0.8rem !important; }
.detail .fs2 { font-size: 1.0rem !important; }
.detail .fs3 { font-size: 1.2rem !important; }
.detail .fs4 { font-size: 1.3rem !important; }
.detail .fs5 { font-size: 1.4rem !important; }
.detail .fs6 { font-size: 1.8rem !important; }
.detail .fs7 { font-size: 2.4rem !important; }
.detail .fs8 { font-size: 3.6rem !important; }
.detail .fs9 { font-size: 4.8rem !important; } */

.detail .fs1 { font-size: 8pt; }
.detail .fs2 { font-size: 10pt; }
.detail .fs3 { font-size: 12pt; }
.detail .fs4 { font-size: 14pt; }
.detail .fs5 { font-size: 18pt; }
.detail .fs6 { font-size: 24pt; }
.detail .fs7 { font-size: 36pt; }

/* 中央揃え */

.detail .outbox {
	position: relative;
}

.detail .outbox .inbox {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

/* @end */

/* 
.detail .w1 { width: 1%; } .detail .w2 { width: 2%; } .detail .w3 { width: 3%; } .detail .w4 { width: 4%; } .detail .w5 { width: 5%; } .detail .w6 { width: 6%; } .detail .w7 { width: 7%; } .detail .w8 { width: 8%; } .detail .w9 { width: 9%; } .detail .w10 { width: 10%; } .detail .w11 { width: 11%; } .detail .w12 { width: 12%; } .detail .w13 { width: 13%; } .detail .w14 { width: 14%; } .detail .w15 { width: 15%; } .detail .w16 { width: 16%; } .detail .w17 { width: 17%; } .detail .w18 { width: 18%; } .detail .w19 { width: 19%; } .detail .w20 { width: 20%; } .detail .w21 { width: 21%; } .detail .w22 { width: 22%; } .detail .w23 { width: 23%; } .detail .w24 { width: 24%; } .detail .w25 { width: 25%; } .detail .w26 { width: 26%; } .detail .w27 { width: 27%; } .detail .w28 { width: 28%; } .detail .w29 { width: 29%; } .detail .w30 { width: 30%; } .detail .w31 { width: 31%; } .detail .w32 { width: 32%; } .detail .w33 { width: 33%; } .detail .w34 { width: 34%; } .detail .w35 { width: 35%; } .detail .w36 { width: 36%; } .detail .w37 { width: 37%; } .detail .w38 { width: 38%; } .detail .w39 { width: 39%; } .detail .w40 { width: 40%; } .detail .w41 { width: 41%; } .detail .w42 { width: 42%; } .detail .w43 { width: 43%; } .detail .w44 { width: 44%; } .detail .w45 { width: 45%; } .detail .w46 { width: 46%; } .detail .w47 { width: 47%; } .detail .w48 { width: 48%; } .detail .w49 { width: 49%; } .detail .w50 { width: 50%; } .detail .w51 { width: 51%; } .detail .w52 { width: 52%; } .detail .w53 { width: 53%; } .detail .w54 { width: 54%; } .detail .w55 { width: 55%; } .detail .w56 { width: 56%; } .detail .w57 { width: 57%; } .detail .w58 { width: 58%; } .detail .w59 { width: 59%; } .detail .w60 { width: 60%; } .detail .w61 { width: 61%; } .detail .w62 { width: 62%; } .detail .w63 { width: 63%; } .detail .w64 { width: 64%; } .detail .w65 { width: 65%; } .detail .w66 { width: 66%; } .detail .w67 { width: 67%; } .detail .w68 { width: 68%; } .detail .w69 { width: 69%; } .detail .w70 { width: 70%; } .detail .w71 { width: 71%; } .detail .w72 { width: 72%; } .detail .w73 { width: 73%; } .detail .w74 { width: 74%; } .detail .w75 { width: 75%; } .detail .w76 { width: 76%; } .detail .w77 { width: 77%; } .detail .w78 { width: 78%; } .detail .w79 { width: 79%; } .detail .w80 { width: 80%; } .detail .w81 { width: 81%; } .detail .w82 { width: 82%; } .detail .w83 { width: 83%; } .detail .w84 { width: 84%; } .detail .w85 { width: 85%; } .detail .w86 { width: 86%; } .detail .w87 { width: 87%; } .detail .w88 { width: 88%; } .detail .w89 { width: 89%; } .detail .w90 { width: 90%; } .detail .w91 { width: 91%; } .detail .w92 { width: 92%; } .detail .w93 { width: 93%; } .detail .w94 { width: 94%; } .detail .w95 { width: 95%; } .detail .w96 { width: 96%; } .detail .w97 { width: 97%; } .detail .w98 { width: 98%; } .detail .w99 { width: 99%; } .detail .w100 { width: 100%; }
*/
.detail .w5 { width: 5%; }
.detail .w10 { width: 10%; }
.detail .w15 { width: 15%; }
.detail .w20 { width: 20%; }
.detail .w22 { width: 22%; }
.detail .w24 { width: 24%; }
.detail .w25 { width: 25%; }
.detail .w30 { width: 30%; }
.detail .w32 { width: 32%; }
.detail .w40 { width: 40%; }
.detail .w45 { width: 45%; }
.detail .w49 { width: 49%; }
.detail .w50 { width: 50%; }
.detail .w60 { width: 60%; }
.detail .w64 { width: 64%; }
.detail .w70 { width: 70%; }
.detail .w74 { width: 74%; }
.detail .w80 { width: 80%; }
.detail .w90 { width: 90%; }
.detail .w100 { width: 100%; }

.detail .m_o10 { margin-top: 10px; }
.detail .m_o20 { margin-top: 20px; }
.detail .m_o30 { margin-top: 30px; }
.detail .m_o40 { margin-top: 40px; }
.detail .m_o50 { margin-top: 50px; }
.detail .m_o60 { margin-top: 60px; }
.detail .m_o80 { margin-top: 80px; }

.detail .m_l0 { margin-left: 0; }
.detail .m_l1 { margin-left: 1%; }
.detail .m_l2 { margin-left: 2%; }
.detail .m_l4 { margin-left: 4%; }

.detail .m_r0 { margin-right: 0; }
.detail .m_r1 { margin-right: 1%; }
.detail .m_r2 { margin-right: 2%; }
.detail .m_r4 { margin-right: 4%; }

.detail .m_u10 { margin-bottom: 10px; }
.detail .m_u20 { margin-bottom: 20px; }
.detail .m_u30 { margin-bottom: 30px; }
.detail .m_u40 { margin-bottom: 40px; }
.detail .m_u50 { margin-bottom: 50px; }
.detail .m_u60 { margin-bottom: 60px; }
.detail .m_u80 { margin-bottom: 80px; }

/* .detail .nomgn { margin: 0; } */

@media only screen and (max-width: 768px) {	
	/* .detail .imgL,
	.detail .imgR {
		width: 100% !important;
		max-width: auto;
		float: none;
		margin: 0 auto 10px;
	} */

	.detail .fl,
	.detail .fr {
		float: none;
	}
	
	.detail .resp_w5 { width: 5%; }
	.detail .resp_w10 { width: 10%; }
	.detail .resp_w15 { width: 15%; }
	.detail .resp_w20 { width: 20%; }
	.detail .resp_w22 { width: 22%; }
	.detail .resp_w24 { width: 24%; }
	.detail .resp_w25 { width: 25%; }
	.detail .resp_w30 { width: 30%; }
	.detail .resp_w32 { width: 32%; }
	.detail .resp_w40 { width: 40%; }
	.detail .resp_w45 { width: 45%; }
	.detail .resp_w49 { width: 49%; }
	.detail .resp_w50 { width: 50%; }
	.detail .resp_w60 { width: 60%; }
	.detail .resp_w64 { width: 64%; }
	.detail .resp_w70 { width: 70%; }
	.detail .resp_w74 { width: 74%; }
	.detail .resp_w80 { width: 80%; }
	.detail .resp_w90 { width: 90%; }
	.detail .resp_w100 { width: 100%; }	
	
	.detail .resp_m_o0 { margin-top: 0; }
	.detail .resp_m_o20 { margin-top: 20px; }
	.detail .resp_m_o30 { margin-top: 30px; }
	.detail .resp_m_o40 { margin-top: 40px; }
	.detail .resp_m_o50 { margin-top: 50px; }
	.detail .resp_m_o60 { margin-top: 60px; }
	.detail .resp_m_o80 { margin-top: 80px; }

	.detail .resp_m_l0 { margin-left: 0; }
	.detail .resp_m_l1 { margin-left: 1%; }
	.detail .resp_m_l2 { margin-left: 2%; }
	.detail .resp_m_l4 { margin-left: 4%; }
	
	.detail .resp_m_r0 { margin-right: 0; }
	.detail .resp_m_r1 { margin-right: 1%; }
	.detail .resp_m_r2 { margin-right: 2%; }
	.detail .resp_m_r4 { margin-right: 4%; }
	
	.detail .resp_m_u10 { margin-bottom: 10px; }
	.detail .resp_m_u20 { margin-bottom: 20px; }
	.detail .resp_m_u30 { margin-bottom: 30px; }
	.detail .resp_m_u40 { margin-bottom: 40px; }
	.detail .resp_m_u50 { margin-bottom: 50px; }
	.detail .resp_m_u60 { margin-bottom: 60px; }
	.detail .resp_m_u80 { margin-bottom: 80px; }
	
	.detail .resp_fl { float: left; }
	.detail .resp_fr { float: right; }
	
	.detail .resp_center {
		margin-left: auto;
		margin-right: auto;
	}	
		
	.detail .resp_tl {
		text-align: left;
	}
	
	.detail .resp_tr {
		text-align: right;
	}
	
	.detail .resp_tc {
		text-align: center;
	}
			
	.detail .resp_vt {
		vertical-align: top;
	}
	
	.detail .resp_vm {
		vertical-align: middle;
	}
	
	.detail .resp_vb {
		vertical-align: bottom;
	}

}


.detail p {
	margin: 1em 0;
}

.detail .wrap {
	overflow: hidden;
}

.detail h3 {
	background: #f6f6f6;
	font-size: 2.5rem; /* 25px */
	line-height: 1.5;
    font-weight: bold;
	padding: 0.5em 1em; 
    margin: 2em 0 1em;
	/* display: inline-block; */
	display: block;
	position: relative;
	/* border-left: 5px solid #032535;	*/
	/* border: 3px solid #fe5700 */
	/* border-bottom: 3px solid #fe5700; */
	/* display: inline-block; */
	/* border-bottom: 3px solid #062e42; */
}



body.about:before {	background: #f5f5f5; } /* ごあいさつ */


/* 各事業所 */
body.care-supported-aged-home .detail h3 { border-left: 5px solid #9fdddd; }
body.rental-house .detail h3 { border-left: 5px solid #f5c6a6; }
body.aged-home .detail h3 { border-left: 5px solid #e2d76b; }
body.care-house .detail h3 { border-left: 5px solid #7fb896; }
body.group-home .detail h3 { border-left: 5px solid #cd99b3; }
body.day-service .detail h3 { border-left: 5px solid #73bbd2; }
body.long-term-care-support-provider .detail h3 { border-left: 5px solid #a19778; }

body.interview .detail h3 {	border-left: 5px solid #f8f8f8; } /* スタッフ紹介 デフォルト */

body.interview.number-01 .detail h3 { border-left: 5px solid #ee9eab; } /* スタッフ紹介 01 */
body.interview.number-02 .detail h3 { border-left: 5px solid #a6ce78; } /* スタッフ紹介 02 */
body.interview.number-03 .detail h3 { border-left: 5px solid #3ea2d6; } /* スタッフ紹介 03 */


/*
.detail h3:after {
	clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
} 
*/
.detail h3:before {
	
	/* content: "";
	padding-right: 0.1em;
	width: 20px;
	height: 3px;
	background: #f35955;
	position: absolute;
	left: -10px;
	
	top: 50%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%); */
}

.detail > h3:first-child {
    margin: 1em 0 1em;
}

.detail h4 {
	font-size: 2.5rem; /* 18px */
	font-weight: bold;
	margin: 2em 0 1em;
	border-bottom: 2px solid #f6f6f6;
}

.detail h3 + h4 {
    margin: 1em 0 1em;
}

.detail h5 {
	font-size: 2.0rem;
	font-weight: bold;
	margin: 1em 0 1em;
	display: inline-block;
	/* border-bottom: 3px solid #fe5700; */
}

.detail h4 + h5 {
	margin: 0;
}


@media only screen and (max-width: 768px) {	
	
	.detail h3 {
		font-size: 2.0rem;
		padding: 0.5em;
	}

	.detail h4 {
		font-size: 1.8rem;
		font-weight: bold;
		margin: 1em 0 0.5em;
	}
	
	
	
	

}









.detail .required {
	color: #ff5b5e;
}






/* ---------------------------------------------------------------------- 各事業所空き状況 */

.detail div.status-part {
	width: 100%;
	box-sizing: border-box;
}

.detail div.status-part ul li {
	float: left;
	width: 49%;
	margin-right: 2%;
	border: 1px solid #cccccc;
	box-sizing: border-box;
	margin-bottom: 1em;
	font-size: 1.8rem;
	padding: 0.5em 1em;
	position: relative;
	
	background: #fff;
	
}


.detail div.status-part ul li:before {
	width: 4px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	content: "";
	border-radius: 0;
}

.detail div.status-part ul li.care-supported-aged-home:before { background: #9fdddd; }
.detail div.status-part ul li.rental-house:before { background: #f5c6a6; }
.detail div.status-part ul li.aged-home:before { background: #e2d76b; }
.detail div.status-part ul li.care-house:before { background: #7fb896; }
.detail div.status-part ul li.group-home:before { background: #cd99b3; }
.detail div.status-part ul li.day-service:before { background: #73bbd2; }

.detail div.status-part ul li:nth-child(2n) {
	margin-right: 0;
}

.detail div.status-part ul li div.facility-name {
	float: left;
	width: 59%;
	margin-right: 2%;
	white-space: nowrap;
	position: relative;
}

.detail div.status-part ul li div.facility-name:after {
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	width: 1px;
	height: 50%;
	background: #ddd;
	transform: translate( 0, -50%);
	-webkit-transform: translate( 0, -50%);
}



.detail div.status-part ul li div.facility-status {
	float: left;
	width: 39%;
	text-align: center;
}



@media only screen and (max-width: 768px) {	
	.detail div.status-part ul li {
		float: none;
		width: 100%;
		margin-right: 0;
		
	}
}

/* ------------------------------------------------------------------------------------------------------------------------------------ ul */

.detail ul {
	margin: 10px 0 20px;
	padding: 0;
}

.detail ul li {
	margin: 0;
	padding: 0 0 0 15px;
	position: relative;
}

.detail ul li::before {
    background: #343434 none repeat scroll 0 0;
    border-radius: 50%;
    content: "";
    height: 8px;
    left: 0;
    margin-right: 0.5em;
    position: absolute;
    top: 0.75em;
    transition: all 0.3s ease-out 0s;
    width: 8px;
}

.detail ul li.list-unstyled {
	list-style: none;
	background: none;
	padding: 0;
}

.detail ul li ul li {
	list-style: none;
	background: none;
	margin: 0;
	padding: 0;
}

.detail ul li ul li:before {
	content:"・";
}

.detail ul.inline {
	margin: 0;
}

.detail ul.inline li {
	display: block;
	white-space: nowrap;
	float: left;
	padding-right: 0.5em;
}

.detail ol {
	margin: 10px 0 20px 20px;
	padding: 0;
}

.detail ol li {
	margin: 0;
	padding: 0 0 10px;
}

.detail ul li strong,
.detail ol li strong {
}

/* ------------------------------------------------------------------------------------------------------------------------------------ deco-list */

.detail ol.deco-list {
	/* margin: 10px 0 20px 20px;
	padding: 0; */
	counter-reset: number;
	list-style: none;
	margin:0;
	padding:0;	
}

.detail ol.deco-list li {
	margin: 0;
	padding: 0 0 1em;
	/* padding: 0; */	
}

.detail ol.deco-list>li>ol>li {
	padding: 0 0 0 2em;
	text-indent: -1em;
}

.detail ol.deco-list li:before{
	counter-increment: number;
	content: counter(number);
	
	background: #ba9975;
	display: inline-block;
	width: 1em;
	height: 1em;
	text-align: center;
	/* border-radius: 50%; */
	color: #fff;
	margin-right: .3em;
	line-height: 1em;
	padding: 0.1em;	
}

.detail ol.deco-list>li>ol>li:before {
	counter-increment: number;
	content: counter(number)".";	
	margin-right: 0em;
	background: none;
	color: #ba9975;
	font-weight: bold;
}

/*  ------------------------------------------------------------------------------------------------------------------------------------ qa */

.detail ul.qa {
	/* background: #f6f6f6; */
	margin: 10px 0 20px;
	padding: 1em;
}

@media only screen and (max-width: 768px) {	
	.detail ul.qa {
		padding: 0;
	}
}


.detail ul.qa li {
	list-style: none;
	background: none;
	margin: 0;
	padding: 1em;
	/* text-align: center; */
	position: relative;
	/* color: #585858; */
}

.detail ul.qa li span.head {
	display: block;
	font-size: 1.8rem;
	font-weight: bold;
}

.detail ul.qa li.question {
	/* background: #e6f4ff; */
	background: #f2f9ff;
	/* border: 3px solid #013891; */
	margin-bottom: 30px;
}

.detail ul.qa li.question span.head {
	color: #fff;
	background: #88b2d1;
	border-radius: 100px;
	/* padding: 0.2em 0.8em; */
	position: absolute;
	top: -20px;
	left: -20px;
	width: 35px;
	height: 35px;
	box-sizing: border-box;	
	display: block;
	text-align: center;
}

.detail ul.qa li.question:before {
	background: none;
	content: "";
	position: relative;
	bottom: 0;
	left: 0;
	margin: 0;
	width: 0;
	height: 0;
	border: none;
	z-index: 0;
}

.detail ul.qa li.question:after {
	content: "";
	position: absolute;
	bottom: -19px; left: 50%;
	margin-left: -19px;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 19px 19px 0 19px;
	border-color: #f2f9ff transparent transparent transparent;
	z-index: 0;
}

.detail ul.qa li.answer {
	background: #ffe6e7;
	background: #fff3f3;
	/* border: 3px solid #fe5700; */
	margin-bottom: 80px;
}

.detail ul.qa li.answer:last-child {
	margin-bottom: 0;
}

.detail ul.qa li.answer span.head {
	color: #fff;
	background: #ed777c;
	border-radius: 100px;
	/* padding: 0.2em 0.8em; */
	position: absolute;
	top: -20px;
	left: -20px;
	width: 35px;
	height: 35px;
	box-sizing: border-box;	
	display: block;
	text-align: center;
}

.detail ul.qa li.answer:before {
	background: none;
	content: "";
	position: relative;
	bottom: 0;
	left: 0;
	margin: 0;
	width: 0;
	height: 0;
	border: none;
	z-index: 0;
}

/* ------------------------------------------------------------------------------------------------------------------------------------ table */

.detail table.deco-tb {
    text-align: left;
    vertical-align: middle;
    width: 100%;
	border-collapse: collapse;
	border: 1px solid #f0f0f0;
	/* border-top: 3px solid #ccc; */
	border-left: none;
	border-right: none;
	
	background: #fff;
}

.detail table.deco-tb th.t_top {
    /* border-top: 3px solid #ccc; */
	/* border-bottom: 3px double #E3E3E3; */
    vertical-align: middle;
}

.detail table.deco-tb th {
    border: 1px solid #ccc;
	border-left: none;
	border-right: none;
    padding: 0.8em 0.5em;
    text-align: left;
    vertical-align: middle;
	/* background: #eee; */
	/* color: #ffffff; */
}

.detail table.deco-tb td.t_top {
    /* border-top: 3px solid #ccc; */
	/* border-bottom: 3px double #E3E3E3; */
	vertical-align: middle;
}

.detail table.deco-tb td {
    border: 1px solid #ccc;
	border-left: none;
	border-right: none;
    padding: 0.8em 0.5em;
    vertical-align: top;
}

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

	/* -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- table.resp_block */

	.detail table.resp_block {
		width: 100%;
		border: none;
   		border-bottom: 1px solid #ccc;
	}
	
	.detail table.resp_block thead {
		display: none;
	}
	
	.detail table.resp_block tr {
		display: block;
		border: none;
		margin: 0;
		border: 5px solid #f0f0f0;
		padding: 0.5em;
		margin-bottom: 2em;
		
		/* border-radius: 5px; */
	}

	.detail table.resp_block th {
		display: block;
		width: 100%;
		box-sizing: border-box;
		border: none;
		border-top: 1px solid #ccc;
		padding: 0;
		border: none;
	}

	.detail table.resp_block td {
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding: 0;
		border: none;
		/* margin-bottom: 1em; */
		border: none;
	}
	
	.detail table.resp_block tr td:last-child {
		margin-bottom: 0;
	}
	
	.detail table.resp_block tr td:first-child {
		border-top: none;
	}
	
	.detail table.resp_block td:before {
		content: attr(data-text)"";
		display: block;
		width: 100%;
		font-weight: bold;
		padding-top: 1em;
		background: #f8f8f8;
		/* border: 1px solid #e9ecef; */
		border-left: none;
		border-right: none;
		padding: 0 0.5em;
		box-sizing: border-box;
		margin-bottom: 0.5em;
		
		border-color:  #f0f0f0;
	}	
	
}

/* ------------------------------------------------------------------------------------------------------------------------------------ div display="table" */

.detail div.table {
    text-align: left;
    /* vertical-align: middle; */
    width: 100%;
	border-collapse: collapse;
	/* border: 1px solid #ddd; */
	display: table;
}

.detail div.table div.row {
	border-bottom: 1px solid #eee;
	padding: 0.5em 0;
}

.detail div.table div.th {
    /* border: 1px solid #ddd; */
    padding: 4px 5px;
    text-align: left;
    /* vertical-align: middle; */
	/* background: #eee; */
	/* color: #ffffff; */
	display: table-cell;
}

.detail div.table div.th:after {
	content: ":";
	vertical-align: middle;
}

.detail div.table div.td {
    /* border: 1px solid #ddd; */
    padding: 4px 5px;
    /* vertical-align: middle; */
	display: table-cell;
	font-weight: normal;
}

@media only screen and (max-width: 768px) {	
	.detail div.table div.th,
	.detail div.table div.td {
		display: block;
	}
}

@media only screen and (max-width: 768px) {	
	
	/* ------------------------------------------------------------------------------------------------------------------------------------ responsive-type-transform */
	
	/* ------------------------------------------------------------------------------------------------------------------------------------ responsive-type-transform */
	
	.detail table.deco-tb.responsive-type-transform {
		border: none;
		max-width: 100%;
		box-sizing: border-box;
	}
		
	.detail table.deco-tb.responsive-type-transform thead {
		display: none;		
	}
	
	.detail table.deco-tb.responsive-type-transform th {
		display: block;	
		border: none;
		
		width: 100% !important;
	}
	
	.detail table.deco-tb.responsive-type-transform td {
		display: list-item;
		list-style: none;
		border: none;
		border-left: 5px solid #f0f0f0;
		padding: 0 0 0 0.5em;
		margin: 0.5em 0 1em;
	}
	
	/* add content  <td data-text="content"> */
	.detail table.deco-tb.responsive-type-transform td:before {
		content: attr(data-text)"";
		display: block;
		position: relative;
		font-size: 1.4rem;
		font-weight: bold;
	}
	
	/* add content */	
	/*.detail table.deco-tb.responsive-type-transform td:nth-of-type(1):before { content: "見出しX1"; display: block; font-weight: bold; }
	.detail table.deco-tb.responsive-type-transform td:nth-of-type(2):before { content: "見出しX2"; display: block; font-weight: bold; }
	.detail table.deco-tb.responsive-type-transform td:nth-of-type(3):before { content: "見出しX3"; display: block; font-weight: bold; }
	.detail table.deco-tb.responsive-type-transform td:nth-of-type(4):before { content: "見出しX4"; display: block; font-weight: bold; }
	.detail table.deco-tb.responsive-type-transform td:nth-of-type(5):before { content: "見出しX5"; display: block; font-weight: bold; }
	.detail table.deco-tb.responsive-type-transform td:nth-of-type(6):before { content: "見出しX6"; display: block; font-weight: bold; }
	.detail table.deco-tb.responsive-type-transform td:nth-of-type(7):before { content: "見出しX7"; display: block; font-weight: bold; }
	.detail table.deco-tb.responsive-type-transform td:nth-of-type(8):before { content: "見出しX8"; display: block; font-weight: bold; } */
	
	/* ------------------------------------------------------------------------------------------------------------------------------------ responsive-type-outer */
	
	.detail div.responsive-type-outer {
		overflow-x: scroll;
    	-webkit-overflow-scrolling: touch;	
	}
	
	.detail div.responsive-type-outer table.deco-tb {
		table-layout: auto;
		white-space: nowrap;
	}
		
	/* ------------------------------------------------------------------------------------------------------------------------------------ responsive-type-outer-tbody  */
/* tbody scroll */	
	.detail div.responsive-type-outer-tbody {
	}
	
	.detail div.responsive-type-outer-tbody table.deco-tb {
		width: 100%;
		display: block;
		position: relative;
	}
	
	.detail div.responsive-type-outer-tbody table.deco-tb tr {
		display: inline-block;
	}
	
	.detail div.responsive-type-outer-tbody table.deco-tb thead {
	}
		
	.detail div.responsive-type-outer-tbody table.deco-tb thead th,
	.detail div.responsive-type-outer-tbody table.deco-tb thead td {
		border-top: 1px solid #ddd;
	}
	
	.detail div.responsive-type-outer-tbody table.deco-tb th,
	.detail div.responsive-type-outer-tbody table.deco-tb td {
		display: block;
		white-space: nowrap;
	}
	
	.detail div.responsive-type-outer-tbody table.deco-tb thead {
		display: block;
		float: left;
	}
	
	.detail div.responsive-type-outer-tbody table.deco-tb tbody {
		display: block;
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
		white-space: nowrap;
	}
	
	.detail div.responsive-type-outer-tbody table.deco-tb tbody tr {
		margin-left: -5px;		
	}
		
	.detail div.responsive-type-outer-tbody table.deco-tb br {
		display: none;
	}
	
}

/* ------------------------------------------------------------------------------------------------------------------------------------ table.row hover */

.detail table.deco-tb.row tr {
	background: #fff;
    transition: all .1s ease-out 0s;
}

.detail table.deco-tb.row tr:hover {
	background: #f9f0d3;
}

/* ------------------------------------------------------------------------------------------------------------------------------------ deco-box */

.detail .deco-box {
	padding: 1.5em;
	background: #f6f6f6;
	margin-bottom: 1.5em;
	position: relative;
	box-sizing: border-box;
}

.detail .deco-box-line{
	padding: 1.5em;
	background: #fff;
	border: 5px solid #f6f6f6;
	margin-bottom: 1.5em;
	position: relative;
	box-sizing: border-box;
}


/* addition  ナンバー */



.detail .deco-box div.number,
.detail .deco-box-line div.number {
	position: absolute;
	top: -1em;
	left: -1em;
	width: 2.5em;
	height: 2.5em;
	border-radius: 1000px;
	
	color: #555;
	/* color: #7ac4c4; */
}

@media only screen and (max-width: 768px) {	
	.detail .deco-box div.number,
	.detail .deco-box-line div.number {
		width: 2em;
		height: 2em;
		top: -0.5em;
		left: -0.5em;
	}
}

.detail .deco-box div.number span,
.detail .deco-box-line div.number span {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate( -50%, -50%);
	-webkit-transform: translate( -50%, -50%);
	font-size: 3rem;
}

/* -------------------------------------------------------------------------------- 介護付 有料老人ホーム */

body.care-supported-aged-home .detail .deco-box-line div.number {
	background: #9fdddd;
}

/* -------------------------------------------------------------------------------- 高齢者向け優良賃貸住宅 */

body.rental-house .detail .deco-box div.number {
	background: #f5c6a6;
}

/* -------------------------------------------------------------------------------- グループホーム */

body.group-home .detail .deco-box-line div.number {
	background: #cd99b3;
}


/* -------------------------------------------------------------------------------- 居宅介護事業所 */

body.long-term-care-support-provider .detail .deco-box div.number {
	color: #fff;
	background: #a19778;
}

/* -------------------------------------------------------------------------------- 事業所情報 */

body.about .detail .deco-box-line div.number {
	background: #56c5eb;
	color: #fff;
}





.detail div.default-number .deco-box div.number {
	background: #56c5eb;
	color: #fff;
}

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

/* ------------------------------------------------------------------------------------------------------------------------------------ flowArrow */	

.detail .deco-box.flowArrow {
	padding: 1em;
	background: #fff;
	border: 10px solid #f6f6f6;
	position: relative;	
	box-sizing: border-box;
}

.detail .deco-box.flowArrow.none {
	
}

/* .detail .flowArrow::before {
    border-color: #f6f6f6 transparent transparent;
    border-style: solid;
    border-width: 12px 12px 0;
    content: "";
    height: 0;
    left: 50%;
    position: absolute;
    width: 0;
    z-index: 0;
	
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
} */

.detail .flowArrow::after {
    border-color: #ccc transparent transparent;
    border-style: solid;
    border-width: 15px 15px 0;
    content: "";
    height: 0;
    left: 50%;
    position: absolute;
    width: 0;
    z-index: 0;
	bottom: -40px;
	
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}





.detail .flowArrow.none::before,
.detail .flowArrow.none::after {
	border: none;
}

/* ------------------------------------------------------------------------------------------------------------------------------------ dl */

.detail dl {
	width: 100%;
}

.detail dl dt {	
	padding: 0.5em;
	box-sizing: border-box;
	font-weight: bold;
	color: #ff8158;
	position: relative;
}

.detail dl dd {
	padding: 0.5em;
	box-sizing: border-box;
}

/* ------------------------------------------------------------------------------------------------------------------------------------ google map */

@media only screen and (max-width: 768px) {		
	
	.detail .google-maps {
		position: relative;
		padding-bottom: 75%;
		height: 0;
		overflow: hidden;
	}
	
	.detail .google-maps iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100% !important;
		height: 100% !important;
	}
}

/* ------------------------------------------------------------------------------------------------------------------------------------ google map */

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

	.detail .movieWrap {
		position: relative;
		padding-bottom: 56.25%;
		padding-top: 30px;
		height: 0;
		overflow: hidden;
	}
	 
	.detail .movieWrap iframe,
	.detail .movieWrap object,
	.detail .movieWrap a {
		position: absolute;
		top: 0;
		left: 0;
		width: 100% !important;
		height: 100% !important;
	}

}


/* ------------------------------------------------------------------------------------------------------------------------------------ form */	
/* .form add table */

.detail .form {
}

.detail .form .line {
	display: inline;
	margin: 0;
}

.detail .form th {
	/* min-width: 200px; */
}

.detail .form td.sub {
	/* background: #eee; */
	/* width: 110px; */
	vertical-align: middle;
}

.detail .alert {
	color: #ff100a;
}

.detail label,
.postalcode {
	white-space: nowrap;
}

.detail .form input,
.detail .form textarea {
	border-radius: 5px;
	border: none;
	border: 1px solid #ccc;
	background: #f9f9f9;
	transition: all 0.2s ease-in-out;
	padding: 1em;
	box-sizing: border-box;
}

.detail input:focus,
.detail textarea:focus {
	background: #ffffff;
	outline: none;
	border: none;
	border: 1px solid #ccc;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
}

.detail .form input.err,
.detail .form textarea.err
{
    border: 1px solid #a94442;
    background: #ffeeef;
}

.detail input:focus,
.detail textarea:focus
{
    border: none;
    border: 1px solid #eee;
    outline: none;
    background: #fff;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .075) inset, 0 0 8px rgba(102, 175, 233, .6);
}

.detail input.err:focus,
.detail textarea.err:focus
{
    border: none;
    border: 1px solid #eee;
    outline: none;
    background: #fff;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .075) inset, 0 0 8px rgba(169, 68, 66, .075);
}

.detail input:active,
.detail textarea:active {
	background: #ffffff;		
	outline: none;
	border: none;
	border: 1px solid #ccc;
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.125) inset;
}

.detail  input::-moz-focus-inner,
.detail  textarea::-moz-focus-inner
{
    padding: 0;
    border: 0;
}

/* placeholder color */

::-webkit-input-placeholder {
	color: #ccc;
	opacity: 1;
}
:-moz-placeholder {
	color: #ccc;
}
::-moz-placeholder {
	color: #ccc;
	opacity: 1;
}
:-ms-input-placeholder {
	color: #ccc;
}
:placeholder-shown {
	color: #ccc
}

/* セレクトボックス */

.detail .form select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-size: 100%;
	height: 38px;
	border-radius: 5px;
	border: 1px solid #ccc;
	min-width: 80px;
	padding: 0 0.5em;
	cursor: pointer;
	width: 100%;
	background: #fff;
}

.detail .form select.err
{
    border: 1px solid #a94442;
    background: #ffeeef;
}


.detail .form select::-ms-expand {
	display: none;
}

.detail .form select:focus {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
}

.detail .form select.err:focus
{
    box-shadow: 0 1px 1px rgba(0, 0, 0, .075) inset, 0 0 8px rgba(169, 68, 66, .2);

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.detail .form div.selectWrap {
	position: relative;
	/* width: 50%; */
	height: 38px;
	display: inline-block;
}

.detail .form div.selectWrap::after {
	position: absolute;
	top: 55%;
	right: 10px;
	display: block;
	content: '';
	width: 0;
	height: 0;
	margin-top: -4px;
	border: 4px solid transparent;
	border-top: 4px solid #888;
	pointer-events: none; 
}

/* ----------------------------------------------------------------------------------------------- */

.detail .form label:hover {
	color: #2b91fc;
}

/* ----------------------------------------------------------------------------------------------- radio checkbox */

.detail .form input[type=radio],
.detail .form input[type=checkbox] {
	display: none;
}

.detail .form .radio,
.detail .form .checkbox {
	box-sizing: border-box;
	-webkit-transition: background-color 0.2s linear;
	transition: background-color 0.2s linear;
	position: relative;
	display: inline-block;
	padding: 6px 12px 6px 42px;
	border-radius: 4px;
	background-color: #f6f7f8;
	vertical-align: middle;
	cursor: pointer;
}

.detail .form .radio.err,
.detail .form .checkbox.err {
	background-color: #ffeeef;
}

.detail .form .radio:hover,
.detail .form .checkbox:hover {
  background-color: #d7e5ed;
}

.detail .form .radio:hover:after,
.detail .form .checkbox:hover:after {
  border-color: #0073aa;
}

.detail .form .radio:after {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  position: absolute;
  top: 50%;
  left: 15px;
  display: block;
  margin-top: -10px;
  width: 16px;
  height: 16px;
  border: 2px solid #ccc;
  border-radius: 50%;
  content: '';
}

.detail .form .checkbox:after {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  position: absolute;
  top: 50%;
  left: 15px;
  display: block;
  margin-top: -10px;
  width: 16px;
  height: 16px;
  border: 2px solid #ccc;
  border-radius: 4px;
  content: '';
}

.detail .form .radio:before {
  /* -webkit-transition: opacity 0.2s linear; */
  /* transition: opacity 0.2s linear; */
  -webkit-transition: 0.2s linear;
  transition: 0.2s linear;
  position: absolute;
  top: 65%;
  left: 25px;
  display: block;
  margin-top: -5px;
  width: 0;
  height: 0;
  border-radius: 50%;
  background-color: #0073aa;
  content: '';
  opacity: 1;
}

.detail .form input[type=radio]:checked + .radio:before {
  opacity: 1;
  top: 50%;
  left: 20px;  
  width: 10px;
  height: 10px;
}

.detail .form .checkbox:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 21px;
  display: block;
  margin-top: -7px;
  width: 5px;
  height: 9px;
  border-right: 3px solid #0073aa;
  border-bottom: 3px solid #0073aa;
  content: '';
  opacity: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.detail .form input[type=checkbox]:checked + .checkbox:before {
  opacity: 1;
}

@media only screen and (max-width: 768px) {
	.detail table.deco-tb.form {
		/* font-size: 86%; */
		width: 100%;
		border: none;
	}
	
	.detail table.deco-tb.form td.sub {
		background: #ffffff;
		width: 100%;
		box-sizing: border-box;
		padding-bottom: 0;
	}
	
	.detail .form div.selectWrap {
		/* margin-bottom: 1em; */
		width: 100%;
	}
	
	.detail table.deco-tb.form input,
	.detail table.deco-tb.form textarea {
		width: 100%;
		box-sizing: border-box;
	}
	
	.detail table.deco-tb.form label {
		/* display: block; */
	}
	
	.detail table.deco-tb.form label input {
		width: auto;
	}	
	
	.detail table.deco-tb.form th {
		/* min-width: 40px; */
		display: block;
		width: 100%;
		box-sizing: border-box;
		border: none;
		margin: 0 0 1em;
	}	
	
	.detail table.deco-tb.form td {
		display: block;
		border: none;
		padding: 0 0 1em;
	}	
	
}

/* ------------------------------------------------------------------------------------------------------------------------------------ .btn */	
/* .btn .default */

.detail .btns .btn {
	display: inline-block;
}

.detail .btn {
	background: #eee;
	/* margin: 0 auto 1em; */
	display: block;
	padding: 0.5em 1em;
	/* border: 1px solid #ccc; */
	border-radius: 5px;
	box-sizing: border-box;
	text-decoration: none;
	text-align: center;
	line-height: 1.5;
	transition: all 0.1s ease-in-out;
	
	cursor: pointer;
	
	border: 1px solid;
	border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) #a2a2a2;
}


/* btn color */
.detail .btn.default {
	background: -moz-linear-gradient(top,#FFF 0%,#EEE);
    background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EEE));
	background: #eee;	
    color: #111;
}
.detail .btn.red {
	background: -moz-linear-gradient(top,#ff5a5f 0%,#ff5a5f);
    background: -webkit-gradient(linear, left top, left bottom, from(#ff5a5f), to(#ff5a5f));
    background: #ff5b5e;
	color: #fff;
}
.detail .btn.purple {
	background: -moz-linear-gradient(top,#6f5499 0%,#6f5499);
    background: -webkit-gradient(linear, left top, left bottom, from(#6f5499), to(#6f5499));
    background: #cf8ae5;
	color: #fff;
}
.detail .btn.blue {
	background: -moz-linear-gradient(top,#337ab7 0%,#337ab7);
    background: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#337ab7));
    background: #4b8efa;
	color: #fff;
}
.detail .btn.green {
	background: -moz-linear-gradient(top,#30a6b1 0%,#30a6b1);
    background: -webkit-gradient(linear, left top, left bottom, from(#30a6b1), to(#30a6b1));
    background: #6dcc54;
	color: #fff;
}
.detail .btn.yellow {
	background: -moz-linear-gradient(top,#faee2b 0%,#faee2b);
    background: -webkit-gradient(linear, left top, left bottom, from(#faee2b), to(#faee2b));
    background: #f7cf4b;
	color: #666;
}
.detail .btn.orange {
	background: -moz-linear-gradient(top,#f89406 0%,#f89406);
    background: -webkit-gradient(linear, left top, left bottom, from(#f89406), to(#f89406));
    background: #ffa244;
	color: #fff;
}

.detail .btn:hover {
	 filter: brightness(85%);
 	 -moz-filter: brightness(85%);
	 -webkit-filter: brightness(85%);
}

.detail .btn {
}

/* ------------------------------------------------------------------------------------------------------------------------------------ tab */	

.detail #tab01:target ~ div.tabContents div.content:nth-child(1),
.detail #tab02:target ~ div.tabContents div.content:nth-child(2),
.detail #tab03:target ~ div.tabContents div.content:nth-child(3) {
	display: block;
}

.detail #tab02:target ~ div.tabContents div.content:first-child,
.detail #tab03:target ~ div.tabContents div.content:first-child {
	display: none;
}

.detail #tab01:target ~ ul.tabBtn li:nth-child(1) a,
.detail #tab02:target ~ ul.tabBtn li:nth-child(2) a,
.detail #tab03:target ~ ul.tabBtn li:nth-child(3) a {
	background: #333;
	color: #fff;
}

.detail #tab01:target ~ ul.tabBtn li:not(:nth-child(1)) a,
.detail #tab02:target ~ ul.tabBtn li:not(:nth-child(2)) a,
.detail #tab03:target ~ ul.tabBtn li:not(:nth-child(3)) a {
	background: #ccc;
	color: #333;
}

.detail div.trigger { display: none; }

.detail ul.tabBtn {
	margin: 0;
	padding: 0;
}

.detail ul.tabBtn li {
	margin: 0;
	padding: 0;
	position: relative;
	display: inline;
}

.detail ul.tabBtn li::before {
	background: none;
	content: "";
	height: auto;
	left: 0;
	margin: 0;
	position: relative;
	top: 0;
	transition: none;
	width: auto;
}
		
.detail ul.tabBtn li a {
	display: inline-block;
	padding: 0.5em 1em;
	background: #ccc;
	border-radius: 5px 5px 0 0;
	text-decoration: none;
}

.detail #tab01 ~ ul.tabBtn li:nth-child(1) a,
.detail ul.tabBtn li a:hover {
	background: #333;
	color: #fff;
}

.detail div.tabContents {
	width: 100%;
	position: relative;
}

.detail div.tabContents div.content {
	position: relative;
	display: none;
	top: 0;
	width: 100%;
	padding: 1em;
	box-sizing: border-box;
	border: 2px solid #ccc;
	border-radius: 0px 5px 5px 5px;
	animation: fadeIn 0.2s;
}

.detail div.tabContents div.content:first-child {
	display: block;
}

@media print {
	.detail div.tabContents div.content {
		display: block;
	}
}

/* ------------------------------------------------------------------------------------------------------------------------------------ .hoverCaption */

.detail .hoverCaption {
	position: relative;
	overflow: hidden;
}	
.detail .hoverCaption .figcaption {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.6);
	-webkit-transition: .3s;
	transition: .3s;
	opacity: 0;
}	
.detail .hoverCaption .figcaption a {
	display: block;
	width: 100%;
	height: 100%;
}	
.detail .hoverCaption .figcaption span {
	position: absolute;
	left: -100%;
	-webkit-transition: .3s;
	transition: .3s;
	color: #fff;
}	
.detail .hoverCaption .figcaption:hover {
	opacity: 1;
}	
.detail .hoverCaption .figcaption:hover span {
	left: 0;
	-webkit-transition-delay: .2s;
	transition-delay: .2s;		
}

/* map */

div.map {
		position: relative;
		width: 1200px;
		height: 825px;
	}
	
	div.map img {
		position: absolute;
		width: 100%;
		height: 100%;
	}
	
	div.map div.point {
		position: absolute;
		background: url(img/map_point.png) no-repeat;
		background-size: 30px 45px;
		width: 30px;
		height: 45px;
        transition: all .5s ease-in-out;
	}
	
	div.map div.point::before {
		width: 100%;
		text-align: center;
		display: block;
		color: #fff;
		margin-top: 0.2em;
	}
	
	div.map div.point.point01::before {	content: "1"; }
	div.map div.point.point02::before {	content: "2"; }
	div.map div.point.point03::before {	content: "3"; }
	div.map div.point.point04::before {	content: "4"; }
	div.map div.point.point05::before {	content: "5"; }	
	
	div.map div.point:hover {
		position: absolute;
		background: url(img/map_point.png) no-repeat;
		background-size: 35px 52px;
		width: 35px;
		height: 52px;
		margin: -7px 0 0 -3px;
	}
	
	div.map div.point a {
		display: block;
		width: 30px;
		height: 45px;
		position: absolute;
		top: 0;
	}
	
	div.map div.point.point01 {
		top: 345px;
		left: 540px;

	}




/* 印刷用 */

@media print {
	header div.bottom,
	div.banners,
	footer {
		display: none;
	}
}

/* ------------------------------------------------------------------------------------------------------------------------------------ .add */

/* max-width 1000px */


.detail .full {
	/* background: #f0f0f0; */
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
	paddding: 0;
    height: auto;
	box-sizing: border-box;
	
	min-width: 1000px;	
}

.detail .full:before {
	content: "";
	display: block;
	/* padding-top: 30%; */
	padding-top: ;
}

.detail .full>.full-inner {
	position: relative;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.detail .full>.full-inner img {
	/* margin-left: calc(-50vw + 50%);*/
	width: 100%;
	max-width: 50vw;
	/* max-height: 240px;  */
}

@media only screen and (max-width: 1000px) {	
	.detail .full {
		margin-left: 0;
		margin-right: 0;
		min-width: 1000px;	
	}

	.detail .full>.full-inner img {
		width: 100%;
		max-width: 50%;
	}
}




/* aタグ の リンク ファイル */

.detail a[href$=".doc"],
.detail a[href$=".docx"],
.detail a[href$=".pdf"] {
	/* white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis; */
}

@media only screen and (max-width: 768px) {	
	.detail a[href$=".doc"],
	.detail a[href$=".docx"],
	.detail a[href$=".pdf"] {
		white-space: normal;
	}

}

.detail a[href$=".doc"]:after, 
.detail a[href$=".docx"]:after {
	display: inline-block;
	padding: 0 0.5em;
	font-size: 1.0rem;
	content: "DOC";
	background: #285192;
	color: #fff;
	font-weight: bold;
	margin: 0 0.5em;
	border-radius: 2px;
}

.detail a[href$=".xls"]:after, 
.detail a[href$=".xlsx"]:after {
	display: inline-block;
	padding: 0 0.5em;
	font-size: 1.0rem;
	content: "XLS";
	background: #00940d;
	color: #fff;
	font-weight: bold;
	margin: 0 0.5em;
	border-radius: 2px;
}



.detail a[href$=".pdf"]:after {
	display: inline-block;
	padding: 0 0.5em;
	font-size: 1.0rem;
	content: "PDF";
	background: #ec2941;
	color: #fff;
	font-weight: bold;
	margin: 0 0.5em;
	border-radius: 2px;
}

.detail a[href$=".zip"]:after {
	display: inline-block;
	padding: 0 0.5em;
	font-size: 1.0rem;
	content: "Zip";
	background: #333;
	color: #fff;
	font-weight: bold;
	margin: 0 0.5em;
	border-radius: 2px;
}

/* */

@media only screen and (max-width: 768px) {	
	.detail a[href^="tel:"] {
		pointer-events: auto;
		color: #023156;
		text-decoration: underline;
	}
	
	.detail a[href^="tel:"]:hover {
		text-decoration: none;
	}
}




