.main_article > h2 {
  color: #2a5f00;
  margin-bottom: 1em; }

.main_article {
  width: 705px;
  float: left;
  margin: auto;
  margin-bottom: 26px;
  padding-right: 15px; }
  .main_article h2 {
    font-size: 24px;
    margin: .5em 0 .75em; }
  .main_article h3 {
    text-align: center;
    font-size: 18px;
    margin-bottom: .75em;
    padding: 5px 0;
    background-color: #c2e778;
    border-radius: 3px; }
  .main_article h4 {
    color: #2a5f00;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: .5em; }
  .main_article p {
    font-size: 15px; }
  .main_article table {
    width: 100%;
    font-size: 16px;
    margin: 1em auto 3em; }
    .main_article table.detail th, .main_article table.detail td {
      padding: .5em .1em;
      border-bottom: dotted 1px #ccc; }
    .main_article table.detail th {
      font-weight: bold;
      white-space: nowrap;
      padding-right: 1.25em; }
    .main_article table.price {
      border: solid 2px #666; }
      .main_article table.price th, .main_article table.price td {
        padding: 7px 0; }
      .main_article table.price td {
        border-left: solid 1px #999; }
      .main_article table.price thead th, .main_article table.price thead td {
        color: #555;
        text-align: center;
        font-weight: bold;
        border-bottom: solid 2px #666; }
      .main_article table.price tbody th, .main_article table.price tbody td {
        border-bottom: solid 1px #999; }
      .main_article table.price tbody th {
        text-align: center; }
      .main_article table.price tbody td {
        text-align: right;
        font-weight: bold;
        padding-right: 1em; }
  .main_article p.submit_bottom {
    text-align: center;
    margin-top: 8em; }
    .main_article p.submit_bottom .btn-open {
      display: inline-block;
      width: 300px;
      height: 60px;
      text-align: center;
      padding-top: 15px;
      background-color: #9ec34b;
      border-radius: 60px;
      font-size: 16px;
      color: #FFF;
      text-decoration: none;
      font-weight: bold;
      border: 2px solid #9ec34b;
      position: relative;
      overflow: hidden;
      z-index: 1; }
      .main_article p.submit_bottom .btn-open:after {
        width: 100%;
        height: 0;
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        background: #FFF;
        opacity: 0;
        -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
                transform: translateX(-50%) translateY(-50%) rotate(45deg);
        -webkit-transition: .2s;
        transition: .2s;
        z-index: -1; }
      .main_article p.submit_bottom .btn-open:hover {
        color: #2A5F00; }
        .main_article p.submit_bottom .btn-open:hover:after {
          height: 240%;
          opacity: 1; }
      .main_article p.submit_bottom .btn-open:active:after {
        height: 340%;
        opacity: 1; }

.main_content .h_top {
  font-size: 18px; }

.main_content .search_region .region_heading {
  font-size: 18px; }

.main_content .search_region h3 {
  font-size: 18px;
  padding-left: 30px; }

.main_content .map_area {
  padding-left: 60px;
  width: 434px;
  min-height: 317px;
  margin: auto; }

.main_content .map_list ul li {
  padding: 3px 20px;
  background-position: 8px 9px; }
  .main_content .map_list ul li.area_overseas {
    left: -20px;
    top: 30px; }
    .main_content .map_list ul li.area_overseas:before {
      position: absolute;
      border-right: 1px solid #d9d9d9;
      border-bottom: 1px solid #d9d9d9;
      content: "";
      width: 104px;
      height: 53px;
      left: 0; }
  .main_content .map_list ul li.area_hokkaido {
    left: 247px;
    top: 48px; }
  .main_content .map_list ul li.area_kansai {
    left: 162px;
    top: 161px; }
  .main_content .map_list ul li.area_hokuriku {
    left: 168px;
    top: 121px; }
  .main_content .map_list ul li.area_kyusyu {
    left: -62px;
    top: 218px;
    padding-right: 10px; }
    .main_content .map_list ul li.area_kyusyu:before {
      position: absolute;
      border-top: 1px solid #d9d9d9;
      border-right: 1px solid #d9d9d9;
      content: "";
      width: 17px;
      height: 32px;
      right: -39px;
      top: -3px; }
  .main_content .map_list ul li.area_chugoku {
    left: 85px;
    top: 161px; }
  .main_content .map_list ul li.area_tohoku {
    left: 358px;
    top: 159px; }
  .main_content .map_list ul li.area_kanto {
    left: 315px;
    top: 220px; }
  .main_content .map_list ul li.area_shikoku {
    left: 136px;
    top: 275px; }
  .main_content .map_list ul li.area_tokai {
    left: 233px;
    top: 264px; }

#sidebar .plus_one-banner {
  display: none !important; }

@media (max-width: 740px) {
  .main_article {
    padding: 5px;
    margin-bottom: 25px; }
  .main_content .h_top {
    font-size: 14px; }
  .main_content .search_region .region_heading {
    font-size: 14px; }
  .main_content .search_region h3 {
    font-size: 16px;
    padding-left: 15px; }
  .main_content .map_area {
    width: 100%;
    padding: 5px;
    padding-bottom: 25px; }
    .main_content .map_area .map_main {
      max-width: 320px;
      margin: auto; }
      .main_content .map_area .map_main img {
        width: 100%;
        max-width: 330px; }
  .main_content .map_list {
    width: 100%;
    max-width: 350px;
    margin-top: auto; }
    .main_content .map_list ul {
      margin-top: 15px; }
      .main_content .map_list ul li {
        padding: 7px 15px;
        background-position: 6px 12px;
        font-size: 11px; }
        .main_content .map_list ul li.area_overseas {
          left: 0; }
        .main_content .map_list ul li.area_hokkaido {
          left: 50%; }
        .main_content .map_list ul li.area_kansai {
          left: 16%;
          top: 61px; }
        .main_content .map_list ul li.area_hokuriku {
          left: 34%;
          top: 61px; }
        .main_content .map_list ul li.area_kyusyu {
          left: 0;
          top: 100px; }
        .main_content .map_list ul li.area_chugoku {
          left: 28%;
          top: 110px;
          left: 28%;
          top: 100px; }
        .main_content .map_list ul li.area_tohoku {
          left: 75%;
          top: 110px; }
        .main_content .map_list ul li.area_kanto {
          left: 75%;
          top: 150px; }
        .main_content .map_list ul li.area_shikoku {
          left: 32%;
          top: 195px; }
        .main_content .map_list ul li.area_tokai {
          left: 52%;
          top: 195px; } }

@media (max-width: 415px) {
  .main_article {
    width: calc(100% - 10px); }
    .main_article p {
      font-size: 15px; }
    .main_article table.detail th, .main_article table.detail td {
      display: block; }
    .main_article table.detail th {
      width: 100%;
      padding: .5em 0 0 .5em;
      border: none; }
    .main_article table.detail td {
      padding: 0 .5em .5em 1.5em; }
    .main_article table.price {
      margin-top: .5em;
      border: solid 1px #666; }
      .main_article table.price thead {
        display: none; }
      .main_article table.price tbody th, .main_article table.price tbody td {
        display: block; }
      .main_article table.price tbody th {
        background-color: #f5f5f5; }
      .main_article table.price tbody td {
        padding-right: 1.5em;
        border: none;
        border-bottom: dotted 1px #aaa; }
        .main_article table.price tbody td:last-child {
          border-bottom: solid 1px #999; }
        .main_article table.price tbody td:before {
          content: attr(data-label);
          float: left;
          color: #666;
          font-weight: normal;
          margin: 0 2em; }
      .main_article table.price tbody tr:last-child td:last-child {
        border: none; } }
