.mainimg {
  width: 970px;
  margin: 0 auto; }

.contents .main .main1 {
  margin-bottom: 2em; }
  .contents .main .main1 .bt {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: .8em; }
  .contents .main .main1 .mail_bt {
    margin-top: 1em; }
  .contents .main .main1 a {
    display: block;
    font-size: .75em;
    margin-bottom: 1em; }
    .contents .main .main1 a:hover img {
      opacity: .7; }
.contents .main .main2 {
  margin-bottom: 2em; }
  .contents .main .main2 .inner {
    margin: 1em 0;
    display: grid;
    grid-template-columns: 4fr 6fr;
    grid-gap: 1em;
    font-size: .9em; }
  .contents .main .main2 .item {
    margin: 1em 0;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: .5em; }
.contents .main .main3 .inner {
  padding: 1em;
  font-size: .9em; }
.contents .main .main3 .region {
  margin-bottom: 1.5em; }
.contents .main .main3 p {
  font-size: 1.1em;
  margin-bottom: .5em;
  font-weight: bold;
  border-bottom: 1px solid #cccccc; }

@media (max-width: 768px) {
  .mainimg {
    width: 100%; }

  .contents .main .main1 {
    margin-bottom: 2em; }
    .contents .main .main1 .mail_bt {
      display: none; }
    .contents .main .main1 a {
      margin-bottom: 0em; }
    .contents .main .main1 span {
      display: none; }
  .contents .main .main2 {
    margin-bottom: 0; }
    .contents .main .main2 img {
      display: none; }
    .contents .main .main2 .inner {
      grid-template-columns: 1fr;
      padding: 0 0.5em; }
  .contents .main .maincontact {
    display: block; } }

/*# sourceMappingURL=sub.css.map */
