@charset "utf-8";
.company_table01 th{
	border-bottom:dotted 1px #808080;
	font-weight:normal;
	text-align:left;
	vertical-align:middle;
	background-color:#fbdbc4;
	color:#000;
}

.company_table01 td{
	border-bottom:dotted 1px #808080;
	vertical-align:middle;
}

.company_table02{
	border-top:dotted 1px #808080;
	width: 100%;
}

.company_table02 th{
	font-weight:normal;
	text-align:left;
	vertical-align:middle;
}

.company_table02 td{
	vertical-align:middle;
}

.company_table01 ul li{
    margin-bottom:10px;
}



@media only screen and (min-width: 768px) {
	.company_sub_title{
		font-size:20px;
		margin:25px 0;
		color:#000;
	}

	.company_comment{
		float:center;
		width:500px;
		font-size:16px;
		line-height:1.8;
	}

	.company_image , .company_name{
		float:right;
		width:430px;
	}


	.company_name div{
		text-align:center;
	}

	.company_area{
		width:800px;
		margin:25px auto 0 auto;
	}


	.company_table01 th{
		width:254px;
		padding:20px;
	}

	.company_table01 td{
		width:546px;
		padding:20px;
	}


	.company_table02 th{
		border-bottom:dotted 1px #808080;
		border-right:dotted 1px #808080;
		width:254px;
		padding:20px;
	}

	.company_table02 td{
		border-bottom:dotted 1px #808080;
		width:546px;
		padding:20px;
	}

}

@media only screen and (max-width: 767px) {
	.title{
		margin-top:20px;
	}
	.company_sub_title{
		font-size:14px;
		margin:35px 0 10px 0;
		color:#000;
		font-weight:bold;
	}

	.company_image img{
		width:100%;
	}

	.company_comment{
		margin:10px 0;
		line-height:1.8;
		font-size:13px;
	}

	.company_name{
		margin:20px 0;
		font-size:13px;
	}

	.company_table01 th{
		width:40%;
		padding:10px;
		font-size:12px;
		font-weight:bold;
	}
	.company_table01 td{
		width:60%;
		padding:10px;
		font-size:12px;
	}
	.company_table01 td span{
		display:block;
	}
	.company_table02 tr{
		border-bottom:dotted 1px #808080;
		display: block;
		padding-block:10px;
	}

	.company_table02 th{
		display:block;
		font-size:12px;
		font-weight:bold;
	}
	.company_table02 td{
		display:block;
		font-size:12px;
	}

	.company_table01 ul li{
		padding-bottom:5px;
		border-bottom:solid 1px #808080;
	}


	.company_table01 ul li br{
		display:none;
	}

}

/* ごあいさつエリア中央寄せ修正（PC表示対応） */
@media only screen and (min-width: 768px) {
  .company_area {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .company_comment,
  .company_image,
  .company_name {
    float: none !important;
    width: 100% !important;
    max-width: 800px;
    margin: 0 auto 20px auto;
    text-align: center;
  }

  .company_image img {
    display: block;
    margin: 0 auto;
  }
}
/* ごあいさつエリア中央寄せ（コメント文は左揃え） */
@media only screen and (min-width: 768px) {
  .company_area {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .company_comment {
    float: none !important;
    width: 100% !important;
    max-width: 800px;
    margin: 0 auto 20px auto;
    text-align: left;   /* ← コメント文だけ左揃え */
  }

  .company_image,
  .company_name {
    float: none !important;
    width: 100% !important;
    max-width: 800px;
    margin: 0 auto 20px auto;
    text-align: center;
  }

  .company_image img {
    display: block;
    margin: 0 auto;
  }

.go_top {
    position: fixed; /* 画面に固定 */
    bottom: 20px;    /* 下から20px */
    right: 120px;     /* 右から20px */
    z-index: 1000;   /* 他の要素より前面に表示 */
}
.go_top img {
    width: 50px;     /* ボタンのサイズ */
    height: auto;
}

/* 基本情報テーブルの最初の行（社名）の上に罫線を追加 */
.company_table01 tr:first-child th,
.company_table01 tr:first-child td {
  border-top: dotted 1px #808080;
}
