@charset "utf-8";

  :root{
    --line:#ddd;
    --label-bg:#f3f3f3;
    --btn:#2d5c86;
    --btn-hover:#3b6d98;
  }
  *{ box-sizing:border-box; }
	
	body{
		margin: 0px;
	}
	
	.topline{
	border-top-width: 5px;
	border-top-style: solid;
	border-top-color: #693;
	padding-top: 20px;
	margin:0;
	}
	
	.topimg img {
  display: block;       /* 中央寄せしやすくする */
  width: 70%;          /* 画面幅に対する比率で縮小 */
  margin: 0 auto;       /* 両側の余白を自動で確保 */
  height: auto;         /* 縦横比を維持 */
}

	.title img {
		max-width:267px;
}

	.tell img {
		max-width:316px;
}

  .contact-wrap{
	max-width:940px;
	margin:0 auto;
	background:#fff;
	padding:20px;
  }

  table.contact-table{
    width:100%;
    border-collapse:collapse;
    table-layout:fixed;
  }
  .contact-table th,
  .contact-table td{
    border:1px solid var(--line);
    padding:16px 20px;
    vertical-align:middle;
  }
  .contact-table th{
    width:260px;
    background:var(--label-bg);
    text-align:left;
    font-weight:normal;
    white-space:nowrap;
  }

  .req{ color:#e00000; margin-left:.25em; }
  .options{
    display:flex; gap:18px; flex-wrap:wrap;
  }
  .options label{ display:inline-flex; align-items:center; gap:.4em; }

  input[type="text"],
  input[type="email"],
  textarea{
    width:100%;
    padding:5px;
    outline:none;
  }
  input[type="text"]:focus,
  input[type="email"]:focus,
  textarea:focus{
    border-color:#7aa7cc;
    box-shadow:0 0 0 3px rgba(122,167,204,.15);
  }
  textarea{ min-height:260px; resize:vertical; }

  .btn-area{
    text-align:center;
    padding:28px 16px;
  }
  .btn-send{
    display:inline-block;
    padding:12px 26px;
    background:var(--btn);
    color:#fff;
    text-decoration:none;
    border:none;
    cursor:pointer;
    transition:filter .35s ease, background-color .35s ease;
    border-radius:4px;
  }
  .btn-send:hover{
    background:var(--btn-hover);
    filter:brightness(1.06);
  }

  /* Responsive: stack label & field on small screens */
  @media (max-width: 640px){
    .contact-table,
    .contact-table tbody,
    .contact-table tr,
    .contact-table th,
    .contact-table td{
      display:block;
      width:100%;
    }
    .contact-table th{
      border-bottom:none;
    }
    .contact-table td{
      border-top:none;
      padding-top:8px;
    }
  }
