/* 一般のお客さまへ */
.customer-section {
  margin: 40px 0;
}

.customer-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-top: 20px;
}

.customer-item {
  display: block;
  padding: 16px;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  text-align: center;
  font-weight: 600;
  transition: background 0.2s;
}

.customer-item:hover {
  background: #f0f8ff;
}


.contents {
 margin: 20px 20px 40px;
}

table{
 width: 100%;
}

table, th, td{
 border: 1px solid #999;
 border-collapse:collapse;
 padding: 5px;
}

ol {
  counter-reset: number;
}
ol li {
  position: relative;
  padding-left: 40px;
}
ol li::before {
  counter-increment: number;
  content: '（' counter(number) '）';
  position: absolute;
  left: 0;
}

.list-style{
	list-style-type: square;
}
.list-style li{
	margin-left: 2rem;
}

.list-style a:hover{
	text-decoration:underline;
}

.flexbox {
	display:flex;
}

.flexbox div{
	margin: 1rem;
	flex-basis: 50%;
}
/* ボタン */
.center-search-btn {
  text-align: center;
  margin: 30px 0 50px;
}

.btn-green {
  display: inline-block;
  background-color: #2e8b57; 
  color: #fff;
  padding: 12px 20px;
  border-radius: 6px;
  text-decoration: none;
  font-size: 1.1em;
  font-weight: bold;
}

.btn-green:hover {
  background-color: #246f46;
}

/* 協会の概要 */

 .greeting_image img{
 margin: 10px 20px 20px 10px;
 float: left;
 width:250px!important;
 }
 
.signature_area{
 margin:0 0 0 auto;
 text-align:right;
 }

.signature{
 font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro'!important;
 font-size: 1.5rem;
 font-weight:bold;
}

.history_table th{
 width:20%;
 text-align:left;
}

.member_table td {
 width: 50%;
}

.member_table a:hover {
  text-decoration: underline !important;
}

.director_list_table td:first-of-type{
 width:20%!important;
 text-align:center;
}

.retrieval_underbar {
  color:#246f46;
}

.retrieval_underbar:hover {
 text-decoration:underline;
}

/* 協会の仕事 */
.note {
	margin: 20px;
	display:flex;
}

.note a{
	text-decoration: underline;
	margin: 1rem;
}

.deco-green {
	color:#009944;
  font-weight: bold;
}

.breaker-img{
	display:block;
	text-align:center;
	margin:1rem auto;
}
.breaker-img img{
	margin: 0 auto;
}

.contents-img{
	display:block;
	text-align:center;
	margin:1rem auto 2rem;
}
.contents-img img{
	margin: 0 auto;
  border:#999 solid 1px;
}

.caravan-img{
 margin: 10px 20px 20px 10px;
 float: left;
 width:250px!important;
}
 
.pdf{
  font-weight: bold;
  text-decoration: underline;
 }

 .R8-form{
  margin: 1rem;
  padding: 1rem;
  background-color:#E6F5EC;
 }

.image-row{
  display: flex;
  gap: 2rem;
  margin: 1rem auto;
  font-weight: bold;
  text-align: center;
}
.image-row img{
  margin: 1rem auto;
}

.image-grid{
  display: grid;
  grid-template-columns: 1fr 1fr; /* 上段は2列 */
  grid-template-rows: auto auto;  /* 下段を追加 */
  gap: 1rem;
  margin: 1rem auto;
  font-weight: bold;
  text-align: center;
}

.center-item {
  grid-column: 1 / 3;   /* 1列目〜2列目をまたぐ（中央に配置） */
  justify-self: center; /* 中央寄せ */
  width:50%;
}

.check{
  margin: 1rem 0 0 0;
}

.check li {
  position: relative;
  /*padding-left: 1rem;   
  text-indent: -1rem; */  
  line-height: 2;    
  margin:0 0 0 2rem;
}

.check li span{
  /*background: linear-gradient(transparent 70%,#69EA92 40%);*/
  text-decoration: underline solid #009944 3px;
  
}

.check li:before {
  content: "✔";
  position: absolute;
  left: -1.5rem;
  top: 0.1rem;            /* 行の中央に合わせる微調整 */
  color: #009944;
  font-size: 1.1rem;      /* マークのサイズを少し調整 */
}

.comment{
  margin:1rem 1rem 3rem;
  padding:1rem;
  background-color: #E6F5EC;
  display: block;
  border: double 5px #246f46;
  text-align: center;
}

figcaption {
    font-weight: bold;
  text-align: center;
}

.content-center{
  text-align: center;
  margin: 2rem auto;
}

.flexbox-proof {
	display:flex;
}

.flexbox-proof div{
  margin: 1rem;
	flex-basis: 50%;
}

/* 内線規程講習会 */
.course_ul li{
  margin-bottom: 1rem;
  padding-left: 1rem;
}

.map_underline{
  text-decoration: underline;
}

.map_underline:hover{
  color: #009944;
}

/* スマホで1カラム */
@media (max-width: 768px) {
  .customer-grid {
    grid-template-columns: 1fr;
  }
  
  .note {
	display:block;
 }

 .member_table td {
  display: block;
  width: 100%;
 }
}

@media (max-width: 599px) {
  .flexbox-proof{
    display: block;
  }
}

@media (max-width: 480px) {
 .greeting_image img, .caravan-img{
    margin: 10px auto;
	float: none;
	clear:both;
	width:100%;
 }
 .flexbox{
	 display:block;
 }
 .image-row{
  display: block;
 }
 .image-grid{
  display: block;
 }
 .center-item {
  width: 100%;
 }
 .flexbox figure img{
  margin: auto;
 }
}