@charset "utf-8";

/* 共通部分
　　----------------------------------------------------------------- */

html {
    font-size: 100%;  /* 設定したフォントサイズを正しく表示するための指示*/
}

body {
  overflow-x: clip;
}

/*　絆福祉会　ロゴの位置設定　*/
.logo img{
    position: absolute; 
    text-align: left;
    margin-left: 0.2rem;
    z-index: 101;
    width: 22%;
}

/* スライドショーの表示位置と大きさの指示 */
.slider {
  width: 100%;
  aspect-ratio: 2.6 / 1;/*縦横比が 2:1*/
  overflow: hidden;
  position: relative;
  max-width: 1800px;/*横幅1800px以上は拡大しない*/
}

.slider div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 2.6 / 1;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 10;
  opacity: 0;
  animation-name: fade;
  animation-duration: 24s;
  animation-iteration-count: infinite;
}

@keyframes fade {
  0%{
    opacity: 0;
  }
  10%{
    opacity: 1;
  }
  95%{
    opacity: 1;
  }
  100%{
    opacity: 0;
    z-index: 0;
  }
}

/* 1枚目のスライド */
.slider>div:first-of-type{
  background-image: url("../images/support_office/SOA_P_L_01.webp");
}

/* 2枚目のスライド */
.slider>div:nth-of-type(2){
  background-image: url("../images/support_office/SOA_P_L_02.webp");
   animation-delay: 6s;
}

/* 3枚目のスライド */
.slider>div:nth-of-type(3){
  background-image: url("../images/support_office/SOA_P_L_03.webp");
   animation-delay: 12s;
}


/* 予備のスライド１ [#]にファイル名を入力してください */
/*.slider>div:nth-of-type(5){
  background-image: url("../images/#/#");
   animation-delay: 24s;
}

/* 予備のスライド２ [#]にファイル名を入力してください */
/*.slider>div:nth-of-type(6){
  background-image: url("../images/#/#");
   animation-delay: 30s;
}*/

/* 予備のスライド３ [#]にファイル名を入力してください*/
/*.slider>div:nth-of-type(7){
  background-image: url("../images/#/#");
   animation-delay: 36s;
}*/

/* 最後のスライド */
.slider>div:last-of-type{
  background-image: url("../images/support_office/SOA_P_L_04.webp");
   animation-delay: 18s;
}

/* スライドに重ねて乗せるコピー ********
住み慣れた地域で暮らし続けたい・・・ ********* */

.message {
	position: absolute;
	background-color: rgba(10,10,10,30%);
	z-index: 200;
	width: 100%;
	top: 10;
	left: 50%;
	transform: translate(-50%,-100%);
	margin: 0;
	padding: 0;
	max-width:1600px;
}

.message p {
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	text-align: center;
	font-size: 2.5vw;
	color: #fff;
	font-weight: 600;
}





/* -------------- スマホサイズのスライドショー ---------------- */

.slider_s {
  width: 100%;
  aspect-ratio: 1.6 / 1;
  overflow: hidden;
  position: relative;
  max-width: 800px;
}

.slider_s div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 1.6 / 1;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 11;
  opacity: 0;
  animation-name: fade;
  animation-duration: 24s;
  animation-iteration-count: infinite;
}

@keyframes fade {
  0%{
    opacity: 0;
  }
  10%{
    opacity: 1;
  }
  95%{
    opacity: 1;
  }
  100%{
    opacity: 0;
    z-index: 0;
  }
}

/* 1枚目のスライド */
.slider_s>div:first-of-type{
  background-image: url("../images/support_office/SOA_P_S_01.webp");
}

/* 2枚目のスライド */
.slider_s>div:nth-of-type(2){
  background-image: url("../images/support_office/SOA_P_S_02.webp");
   animation-delay: 6s;
}

/* 3枚目のスライド */
.slider_s>div:nth-of-type(3){
  background-image: url("../images/support_office/SOA_P_S_03.webp");
   animation-delay: 12s;
}


/* 予備のスライド２ [#]にファイル名を入力してください* */
/*.slider_s>div:nth-of-type(5){
  background-image: url("../images/#/#");
   animation-delay: 24s;
}*/

/* 予備のスライド２ [#]にファイル名を入力してください*/
/*.slider_s>div:nth-of-type(6){
  background-image: url("../images/#/#.webp");
   animation-delay: 30s;
}*/

/* 予備のスライド３ [#]にファイル名を入力してください*/
/*.slider_s>div:nth-of-type(7){
  background-image: url("../images/#/#.webp");
   animation-delay: 36s;
}*/

/* 最後のスライド */
.slider_s>div:last-of-type{
  background-image: url("../images/support_office/SOA_P_S_04.webp");
   animation-delay: 18s;
}

.message_s {
	position: absolute;
	background-color: rgba(10,10,10,30%);
	z-index: 200;
	width: 100%;
	top: 10;
	left: 50%;
	transform: translate(-50%,-100%);
	margin: 0;
	padding: 0;
}

.message_s p {
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	text-align: right;
	font-size: 4vw;
	color: #fff;
	font-weight: 600;
	margin-right: 20px;
}

/*　施設名と住所の記述 ------------- */
.name_add { /* 全体の記述 */
    position: relative;
    display: flex;
    width: 96%;
	margin: 2em auto 0;
}

.name_add p { /* 住所と電話番号の表示設定 */
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    display: block;
    text-align: right;
	font-size: 2.6vw;
	font-weight: 600;
	line-height: 2.6vw;
	width: 45%;
	margin: 0 auto 0 0;
}

.name_add span {
	font-size: 2vw;
}

.name_add table {
    border: 2px solid #C4C4C4;
    border-radius: 20px;
}

.name_add tr {
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-size: 1.8vw;
	color: #3E3E3E;
}

.name_add td {
	background-color: #F9FDB7;
	padding: 4px 10px;
	font-weight: 600;
}

.name_add th {
	padding: 4px 10px;
}

.td_top {
    border-top-left-radius: 20px;	
}

.td_bottom {
	border-bottom-left-radius: 20px;
}

.th_top {
	background-color: #E1E1E1;
	border-top-right-radius: 20px;
}

.th_middle {
	background-color: #E1E1E1;
}

.th_bottom {
	background-color: #E1E1E1;
	border-bottom-right-radius: 20px;
}

.separate_line {
	border-top: none;
	border-left: none;
	border-right: none;
	border-bottom: solid #51B77F 3px;
	margin-top: 1em;
}

/* 事業所名以下の全体ひとまとめ */
.contents {
    position: relative;
    width: 96%;
    margin: 0 auto;
}

/* あんすこのロゴマークと全体説明文 */
.main_info {
	display: flex;
	width: 96%;
	gap: 1%;
	margin: 1em auto 0;
}

.main_info_img {
	width: 20%;
}

.main_info img {
	width: 100%;
}

.main_info_p {
	margin:  auto ;
	width: 70%;
	font-family:YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-size: 1.8vw;
	line-height: 3.2vw;
}

/* こんなときは迷わず ******** */
.sub_title01 {
	position: relative;
	width: 96%;
	margin: 5em auto 0;
}

.sub_title01 p {
    position: relative;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", serif;
    font-size: 2.6vw;
    font-weight: bolder;
    color: #1F1F1F;
    margin-left: 0.2em;
    width: 65%;
    line-height: 4.5vh;
}

.under_line {
    position: relative;
    width: 100%;
    display: flex;
}

.title_underline_01 {
    border-left: none;
    border-right: none;
    border-top: none;
    width: 47%;
    border-bottom: 3px solid #ADDC30;
}

.title_underline_02 {
    border-left: none;
    border-right: none;
    border-top: none;
    width: 53%;
    opacity: 40%;
    border-bottom: 3px solid #B4BEC3;
}

/* 主な相談内容の全体枠 */
.info_01 {
    position: relative;
    display: block;
	gap: 3%;
    width: 92%;
    margin: 0em auto 0;
}


/* 相談内容と電話連絡先 */
.text_info{
	display: flex;
	width: 100%;
	margin: 0.5em auto 0; 
}

/* 箇条書きの相談内容の制御記述 */
.text01 {
	position: relative;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	width: 40%;
	margin: 0em auto 0;
}

/* 迷わずご相談の文字制御 */
.text01 ul {
	margin-left: 1em;
	font-size: 2vw;
	line-height: 3.5vw;
}

.text01 li {
	margin-top: 1em;
}

.text02 {
	position: relative;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	width: 100%;
	margin: 1em auto 6em;
}

.text02 ul {
	margin-left: 1em;
	font-size: 2vw;
	line-height: 3.5vw;
}

.text02 li {
	margin-top: 1em;
}

/* 主な相談内容項目の写真部分 */

.photo_group01 {
	display: block;
	width: 60%;
	margin: 0.8em 0 0 0em;

}

.photo_group01a {
	width: 100%;
	display: flex;
	gap: 1%;
}

.photo_group01b {
	width: 100%;
	display: flex;
	gap: 1%;
	margin-top: 0.2em;
}

.p01 {
	width: 40%;
	flex-grow: 1;
	aspect-ratio: 2 / 1;
	object-fit: cover;
	object-position: center 15%;
}

.p02 {
	width: 60%;
	flex-grow: 1;
	aspect-ratio: 2.8 / 1;
	object-fit: cover;
	object-position: center center;
}

.p03 {
	width: 53%;
	flex-grow: 1;
	aspect-ratio: 2.4 / 1;
	object-fit: cover;
	object-position: center 15%;
}

.p04 {
	width: 47%;
	flex-grow: 1;
	aspect-ratio: 2 / 1;	
	object-fit: cover;
	object-position: center center;
}




.blank_line {
	margin-top: 0.5em;
}
.tb-size {
	display: none;
}





/* トップへ・トップページへボタンの制御記述 */

@media (min-width: 1600px) {
	.for_top_page {
		left: calc(50% + 720px);
	}
	
	.for_top {
		left: calc(50% + 720px);
	}
}

.for_top_page {
	border: solid 2px #6A774C;
	background-color: #FFFFFF;
	opacity: 80%;
	width: 65px;
	height: 65px;
	border-radius: 50px;
	position: fixed;
	top: 110px;
	right: 2%;
	z-index: 201;
}

.for_top_page a {
    text-decoration: none;
}

.for_top_page p {
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	text-align: center;
	font-size: 15px;
	line-height: 14px;
	font-weight: 700;
	color: #6A774C;
	margin: 8px auto;
}

.for_top_page span{
	font-weight: 900;
	font-size:18px;
	line-height: 4px;
}

.for_top_page:hover {
    background-color: #DFDCB1;
}

.for_top {
	border: solid 2px #5B7A80;
	background-color: #FFFFFF;
	opacity: 80%;
	width: 65px;
	height: 65px;
	margin-top: 2em;
	border-radius: 50px;
	position: fixed;
	top: 0px;
	right: 2%;
	z-index: 202;
}

.for_top p {
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    text-align: center;
    font-size: 16px;
    line-height: 16px;
    font-weight: 700;
	color: #5B7A80;
	margin: 12px auto;
}

.for_top span{
	font-weight: 900;
	font-size:18px;
}

.for_top a {
	text-decoration: none;
}

.for_top:hover {
    background-color: #E4E4E4;
}


/* フッターの制御記述 */


.copyright {
	background-image: url("../images/footer.webp");
	background-size: cover;
	text-align: center;
	margin-top: -0.6em;
	color: #fff;
}


/*　横幅が1800px以上になったときの適正化設定 */

@media (min-width: 1600px) {
	.logo img {
		width: 14%;
	}
	
	.message p {
		font-size: 36px;
	}
	
	.name_add p {
		font-size: 36px;
	}
	
	.name_add span {
		font-size: 28px;
	}
	
	.sub_title01 p{
		font-size: 38px;
		line-height: 38px;
	}
	
	.text01 li ,.text02 li{
		font-size: 28px;
		line-height: 46px;
	}
}


/* ----- デスクトップ用記述 800px以上----- */
@media(min-width: 801px){
	
	body {
		max-width: 1600px;
		margin: 0 auto ;
	}
	
	.slider_s {
		display: none;
	}
	
	.message_s {
		display:none;
	}
	
	.info_01_S {
		display: none;
	}
	
	.sp_size {
		display: none;
	}
	
	.tbsp_size {
		display: none;
	}
	
	.dttb_size {
		display: block;
	}
	
	

	
}
	

/* ----- タブレット用記述 500～800px----- */
@media(max-width: 800px){

/* ロゴの大きさ */
	.logo img {
		width: 30%
	}
	
/*　他サイズの改行位置指定を無視するための記述 */	
	.dt-size,.sp_size {
		display: none;
	}

/* タブレットサイズに有効な改行位置 */	
	.tb-size {
		display: block;
	}

/* デスクトップサイズのスライドショーは表示しない */
	.slider {
		display: none;
	}
	
	.message {
		display: none;
	}

/* 住所他基本データ */
	.name_add {
		display: block;
		gap: 4%;
	}
	
	.name_add table {
		width: 80%;
		margin: 1em auto;
	}
	
	.name_add tr {
		font-size: 2.4vw
	}
	
	.name_add td {
		width: 30%;
		padding-left: 1em;
	}
	
	.name_add p {
		font-size: 3.5vw;
		line-height: 3.5vw;
		width: 60%;
		margin: 0 0 0 auto;
	}
	
	.name_add span {
		font-size: 3vw;
	}
	
/* 居宅有瀬の説明文 ************************ */
	.main_info {
		width: 86%;
		display: block;
		margin: 2em auto;
	}
	
	.main_info_p p {
		font-size: 3vw;
		line-height: 6vw;
		width: 92%;
	}
	
	.main_info_img {
		width: 30%;
		margin: 0 auto 1em;
	}
	.main_info_img img{
		width: 100%;
	}

/* サブタイトル */
	.sub_title01 p {
		font-size: 4vw;
		width: 86%;
		line-height: 4.5vh;
	}

/* サブタイトルの下のアンダーライン
	奇数が黄緑、偶数がグレー */
	
/* 主な相談内容のアンダーライン　*/
	.title_underline_01 {
		width: 74%;
	}
	
	.title_underline_02 {
		width: 26%;
	}

 /* 主な相談内容 */
	.info_01 {
		display: none;
	}
	
	.info_01_S {
		display: block;
		margin-bottom:6em;
	}
	
	.text01_s li {
		font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
		font-size: 2.8vw;
		line-height: 4vw;
		width: 90%;
		margin: 0.8em 0 0 10% ;
	}
	
	.photo_group01_s {
		width: 92%;
		display: block;
		margin: 1.5em auto 0 ;
	}
	
	.photo_group01a_s {
		display: flex;
		gap: 1%;
		width: 100%;
	}
	
	.photo_group01b_s {
		display: flex;
		gap: 1%;
		width: 100%;
		margin-top: 0.3em
	}
	
	.p01_s {
		width: 55%;
		aspect-ratio: 2.5 / 1 ;
		object-fit: cover;
		object-position: center 15%;
	}
	
	.p02_s {
		width: 45%;
		aspect-ratio: 2.5 / 1 ;
		object-fit: cover;
		object-position: center center;
	}
	
	.p03_s {
		width: 50%;
		aspect-ratio: 2.0 / 1 ;
		object-fit: cover;
		object-position: center 10%;
	}
	
	.p04_s {
		width: 50%;
		aspect-ratio: 2.0 / 1 ;
		object-fit: cover;
		object-position: center 20%;
	}
	
	
/*	@-moz-document url-prefix(){
    .p02 {
      
		}*/
		
	.dttb_size {
		display: block;
	}

	
}


/* -----スマホ用記述---- */
@media(max-width: 500px){
	
	.slider {
		display: none;
	}
	
	.message {
		display: none;
	}
	
	.dt_size,.tb_size {
		display: none;
	}
	
	.name_add {
		width: 96%;
		display: block;
	}
	
	.name_add p {
		width: 100%;
		text-align: right;
		font-size: 5.5vw;
		line-height: 5vw;
	}
	
	.name_add span {
		font-size: 4vw;
	}
	
	.name_add table {
		width: 98%;
	}
	
	.name_add tr {
		font-size: 3.5vw;
	}
	
	.main_info {
		display: block;
		width: 98%;
	}
	
	.main_info_img  {
		width: 50%;
		margin: 0 auto 
	}
	
	.main_info_p {
		width: 100%;
	}
	
	.main_info_p p{
		width: 100%;
		font-size: 5vw;
		line-height: 6.5vw;
		margin: 1em auto 0;
	}
	
	.text_info {
		display: block;
	}
	
	.text01_s li {
		width: 96%;
		font-size: 5vw;
		line-height: 6.5vw;
	}
	
	.photo_group01_s {
		width: 96%;
	}
	
	.photo_group01a_s {
		display: block;
	}
	
	.photo_group01b_s {
		display: block;
	}
	
	.p01_s,.p02_s,.p03_s,.p04_s {
		width: 100%;
	}
	
	.p03_s,.p04_s {
		aspect-ratio: 2.5 / 1;
	}
	
	.sp_size {
		display: block;
	}
	
	.dttb_size {
		display: none;
	}
	
	.sub_title01 p{
		font-size: 5vw;
		width: 94%;
		line-height: 7vw;
	}
	
	.title_underline_01 {
		width: 92%;
	}
	
	.title_underline_02 {
		width: 8%;
	}
	
	.text01_s {
		width: 96%;
	}
	
	.dt_size {
		display: block;
	}
	
	.for_top_page {
		position: fixed;
		top: 280px;
}

   .for_top {
	   position: fixed;
	   top: 160px
}
}	
	
