@import url("style.css");


.mb100 {
	margin-bottom: 100px;
	color:#555;
}

.t-c {
	text-align: center;
}

.none_pc {
	display: none;
}

.large {
	font-size: 120%;
}

.other-wrap {
	    position: relative;
    z-index: 3;
    background: #fff;
    font-family: "Sawarabi Mincho", serif;
    line-height: 1.9;
}

.other-kv {
	background: #f2f2eb;
	margin-top: 120px;
	display: flex;
	padding:3em 0 3em 0;
}

.about-wrap .other-kv {
	padding-bottom: 50px;
}
.other-kv-content {
	width: 1300px;
	margin: 0 auto;
	 justify-content: center;
  align-items: center;
	padding:1em;
}
.other-copy {
	text-align: center;
	color:#555;
	font-size: 1.4rem;
}
.about-wrap .other-copy {
	text-align: left;
	margin-bottom: 50px;
	line-height:150%;
}

.title-h3 {
	font-size: 1.4rem;
	margin-bottom: 30px;
	font-weight: normal;
	color:#555;
}

.contents-wrap {
	max-width: 980px;
	margin: 0 auto;
	padding: 100px 1em 0 1em;
	color:#555;
}

.office-wrap {
	max-width: 1300px;
}

.resident-wrap {
	max-width: 1080px;
	margin: 0 auto;
	padding: 100px 0;
}

.about-flex01 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	color:#555;
}
.about-flex01 > div:first-child {
	width: 50%;
}
.about-flex01 > div:last-child {
	width: 40%;
}

.name {
	font-size: 120%;
	margin-top: 50px;
	color:#555;
}

.about-table {
	border: 1px solid #cccccc;
	padding: 50px 80px;
	width: 100%;
	margin: 70px 0 90px;
}
.about-table th , .about-table td {
	padding-bottom: 30px;
	vertical-align: top;
}
.about-table tr:last-child th , .about-table tr:last-child td {
	padding-bottom: 0;
}
.about-table th {
	font-weight: normal;
	width: 20%;
	text-align: left;
}
.about-table td {
	width: 40%;
}


@media (max-width: 768px) {
	
.about-table {
		padding: 15px 10px;
	}

.about-table th , .about-table td {
	font-size:13px;
}	

.title-h3 {
	font-size: 1.2rem;
}
	
.other-copy {
	font-size: 1.1rem;
}
	
}


.mymap {
height: 85vh;
overflow: hidden;
}
.mymap iframe {
    width: 100%;
    height: calc(100% + 100px);
    margin-top: -100px;
}





.history-wrap {
	background: linear-gradient(to right, #f2f2eb 0%, #f2f2eb 50%, transparent 50%, transparent 100%);
}
.history-wrap .contents-wrap {
	padding: 0 ;
}

.history-flex {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.history-flex > div:first-child {
	width: 20%;
	text-align: center;
	padding-top: 30px;
}
.history-flex > div:last-child {
	width: 80%;
	background: #fff;
}

.history-table th, .history-table td {
	font-weight: normal;
	padding-left: 50px;
	padding-bottom: 20px;
	vertical-align: top;
}
.history-table th {
	min-width: 200px;
}

.arrow-list li{
	    padding-left: 2rem;
    text-indent: -2rem;
}
.arrow-list li::before {
	content: "▶";
	font-size: 80%;
	padding-right: 1rem;
	left: 0;
}
.arrow-list01 {
	margin-bottom: 100px;
}
.arrow-list01 li {
	font-size: 16px;
	margin-bottom: 10px;
}
.arrow-list02 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.arrow-list02 > li {
	width: 48%;
	margin-bottom: 10px;
}

.arrow-list a{
color:#555;
}

.arrow-list a:hover {
text-decoration: none;
color:#2F56D3;
}


@media (max-width: 768px) {
.arrow-list01 li {
	/*font-size: 15px;*/
	line-height:160%;
}

.arrow-list02 {
	flex-wrap: wrap;
}	
	
.arrow-list02 li {
	font-size: 15px;
}
	
.arrow-list02 > li {
	width: 100%;
	margin-bottom: 10px;
}

}



.office-list {
	display: flex;
	justify-content: center;
	gap: 20px 3.5%;
	flex-wrap: wrap;
}
.office-list > div {
	width: 31%;
	margin-bottom: 80px;
}
.office-list-img {
	margin-bottom: 10px;
	text-align: center;
}
.office-list-img img {
	display: inline;
}
.office-list-text {
	text-align: center;
	margin-bottom: 30px;
	font-size: 15px
}
.icon-list {
	display: flex;
	justify-content: center;
}
.icon-list > div {
	text-align: center;
	margin-left: 20%;
	font-size: 15px;
}
.icon-list > div:first-child {
	margin-left: 0;
}
.icon-list > div:nth-child(3) {
	margin-left: 12%;
}
.icon-list > div img {
	display: inline;
}

div.update p {
	font-size: 120%;
	border: 1px solid #ee5826;
	padding: 5px 20px;
	display: inline;
	margin: 0 auto ;
	max-width: 300px;
}
div.update  {
	text-align: center;
	margin-bottom: 20px;
}

.resident-table {
	border-collapse: collapse;
	margin: 50px 0;
	width: 100%;
	color:#555;
}
.resident-table tr {
	border-top: 1px solid #b3b3b3;
	border-bottom: 1px solid #b3b3b3;
}
.resident-table td {
	padding: 40px 30px;
	position: relative;
}
.resident-table td::before {
	content: "";
	background: #b3b3b3;
	height: 90px;
	width: 1px;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.resident-table tr td:first-child {
	padding-left: 0;
}
.resident-table tr td:first-child::before {
	height: 0;
	width: 0;
}

.facility-head{display:flex; justify-content: center;align-items: center; gap:10px;}
.resident-list-img{flex:0 0 auto;}
.facility-text{flex:1;}
.facility-text span{font-size:14px;}

@media (min-width: 769px) {
.resident-list-img {
	max-width:150px;
	margin-bottom: 10px;
	text-align: center;
}
.resident-list-img img {
	display:inline-block;
}
}

@media (max-width: 768px){
.resident-list-img{
	width:100%;	
	text-align: center;
	margin-bottom: 10px;
}
	
.resident-list-img img{
margin:10px auto;
}	
	
 .facility-head{display:block;}
 .resident-list-img{order:1;}
 .facility-text{order:2;font-size:15px;}
}


/******FAQ**********/
    :root{
      --text:#2b2b2b;
      --muted:#777;
      --accent:#e75a3c; 
      --gap:24px;
      --line:1.9;
      --max:980px;
    }
    html,body{margin:0;padding:0;background:#fff;color:var(--text);font-family:"Noto Sans JP",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Meiryo","Roboto","Helvetica Neue",Arial,sans-serif;}
    .wrap{
      max-width:var(--max);
      margin:60px auto;
      padding:0 24px;
    }

    .qa{
      display:grid;
      grid-template-columns: 80px 1fr;
      column-gap: 24px;
      row-gap: 10px;
      align-items:start;
      padding: 26px 0;
      border-bottom: 0px solid #eee;
    }
    .qa:last-of-type{border-bottom:none;}

    .label{
      font-weight:700;
      color:#4c4c4c;
      letter-spacing:.02em;
    }
    .label.q{
      font-size:20px;
    }
    .label.a{
      font-size:20px;
      color:var(--accent);
    }

    .text{
      line-height:var(--line);
      font-size:16px;
    }

    /* 1行目: Q number と本文を揃えるための見た目調整 */
    .q-number{
      display:flex;
      align-items:flex-start;
      gap:8px;
    }
    .q-number .num{
      font-weight:700;
      color:#000;
    }
    .muted{
      color:var(--muted);
    }

    /* 余白調整（画像に近いゆったり感） */
    .qa + .qa{margin-top:24px;}

    /* レスポンシブ: 狭い幅での行間とフォントサイズ微調整 */
    @media (max-width:600px){
      .qa{grid-template-columns:64px 1fr;}
      .label.q,.label.a{font-size:18px;}
      .text{font-size:15px;line-height:1.85;}
    }






.img-box {
	margin-bottom: 50px;
}

.nemuriscan-link {
	text-align: center;
}
.nemuriscan-link img {
	display: inline;
}

.nemuriscan-link p{
	color:#555;
}


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

	.none_pc {
		display: block;
	}

	.other-kv-content {
		width: 100%;
	}

	.contents-wrap {
		width: 100%;
		padding: 30px 2%;
		font-size:0.9em;
	}

	.other-kv {
		padding: 50px 2%;
	}

	.about-flex01 {
		display: block;
	}
	.about-flex01 > div {
		width: 100% !important;
	}
	.about-flex01 > div:first-child {
		margin-bottom: 20px;
	}

	

	.history-wrap {
		background: transparent;
	}

	.history-flex {
		display: block;
	}
	.history-flex > div {
		width: 100% !important;
	}
	.history-flex >div:first-child {
		background: #f2f2eb;
		padding: 30px 0 1px;
		margin-bottom: 20px;
	}
	.history-table th {
		min-width: 120px;
		padding-left: 0;
		font-size:15px;
	}
	.history-table td {
		padding-left: 10px;
		font-size:15px;
	}

	.office-list {
		display: block;
	}
	.office-list > div {
		width: 100%;
		margin-bottom: 50px;
	}

	.resident-table {
		width: 100%;
		display: block;
	}
	.resident-table tr {
		display: flex;
		flex-wrap: wrap;
		border-bottom: none;
	}
	.resident-table tr:last-child {
		border-bottom: 1px solid #b3b3b3;
	}
	.resident-table td {
		padding: 25px 10px !important;
		display: block;
	}
	.resident-table tr td:first-child {
		width: 100%;
		padding-bottom: 30px !important;
	}
	.resident-table tr td:nth-child(2), .resident-table tr td:nth-child(3) {
		width: 50%;
		padding-top: 0 !important;
	}
	.resident-table td::before {
		content: none;
	}
	


}