/* CSS Document */
/* CSS Document */
.catch {
  margin: 30px 0 0 0;
  text-align: center; }
  .catch p {
    text-align: center;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.5;
    color: #fe561b; }
    @media screen and (min-width: 760.01px) and (max-width: 930px) {
      .catch p {
        font-size: 20px;
        font-size: 2.0rem; } }
    @media screen and (min-width: 600.01px) and (max-width: 760px) {
      .catch p {
        font-size: 21px;
        font-size: 2.1rem; } }
    @media screen and (min-width: 350.1px) and (max-width: 600px) {
      .catch p {
        font-size: 18px;
        font-size: 1.8rem; } }
    @media screen and (max-width: 350px) {
      .catch p {
        font-size: 18px;
        font-size: 1.8rem; } }
    .catch p.lead {
      font-size: 32px;
      font-size: 3.2rem;
      margin: 0 0 10px; }
      @media screen and (min-width: 760.01px) and (max-width: 930px) {
        .catch p.lead {
          font-size: 28px;
          font-size: 2.8rem; } }
      @media screen and (min-width: 600.01px) and (max-width: 760px) {
        .catch p.lead {
          font-size: 30px;
          font-size: 3.0rem; } }
      @media screen and (min-width: 350.1px) and (max-width: 600px) {
        .catch p.lead {
          font-size: 24px;
          font-size: 2.4rem; } }
      @media screen and (max-width: 350px) {
        .catch p.lead {
          font-size: 24px;
          font-size: 2.4rem; } }
      .catch p.lead strong {
        font-size: 38px;
        font-size: 3.8rem; }
        @media screen and (min-width: 760.01px) and (max-width: 930px) {
          .catch p.lead strong {
            font-size: 30px;
            font-size: 3.0rem; } }
        @media screen and (min-width: 600.01px) and (max-width: 760px) {
          .catch p.lead strong {
            font-size: 34px;
            font-size: 3.4rem; } }
        @media screen and (min-width: 350.1px) and (max-width: 600px) {
          .catch p.lead strong {
            font-size: 28px;
            font-size: 2.8rem; } }
        @media screen and (max-width: 350px) {
          .catch p.lead strong {
            font-size: 28px;
            font-size: 2.8rem; } }

.anshin {
  background: #f0f7e9;
  margin: 30px 20px 0 20px;
  padding: 40px 20px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px; }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    .anshin {
      padding: 20px; } }
  @media screen and (max-width: 350px) {
    .anshin {
      padding: 10px; } }

.anshin table {
  margin: auto;
  width: 100%; }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    .anshin table {
      width: 100%; } }
  @media screen and (max-width: 350px) {
    .anshin table {
      width: 100%; } }

@media screen and (min-width: 350.1px) and (max-width: 600px) {
  .anshin table tr {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center; } }
@media screen and (max-width: 350px) {
  .anshin table tr {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center; } }

.anshin table th {
  vertical-align: top;
  padding: 10px 0 10px 0;
  text-align: right;
  font-size: 72px;
  font-size: 7.2rem;
  color: #6db828;
  font-style: italic;
  letter-spacing: -0.1em;
  transform: scale(0.75, 1); }
  @media screen and (min-width: 760.01px) and (max-width: 930px) {
    .anshin table th {
      width: 60px;
      text-align: center; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    .anshin table th {
      font-size: 50px;
      font-size: 5.0rem;
      line-height: 1.2;
      width: 40px;
      display: block;
      align-self: center; } }
  @media screen and (max-width: 350px) {
    .anshin table th {
      font-size: 50px;
      font-size: 5.0rem;
      width: 40px;
      display: block;
      padding: 0;
      align-self: center; } }

.anshin table td {
  padding: 10px 20px 10px 20px; }
  @media screen and (min-width: 930.01px) and (max-width: 1200px) {
    .anshin table td {
      padding: 10px 0 10px 10px; } }
  @media screen and (min-width: 760.01px) and (max-width: 930px) {
    .anshin table td {
      width: calc(50% - 60px); } }
  @media screen and (min-width: 600.01px) and (max-width: 760px) {
    .anshin table td {
      padding: 20px; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    .anshin table td {
      width: calc(100% - 40px);
      display: block;
      padding: 20px 0 20px 20px; } }
  @media screen and (max-width: 350px) {
    .anshin table td {
      width: calc(100% - 40px);
      display: block;
      padding: 10px 10px 10px 20px; } }

.service {
  margin: 30px 0 0 0;
  text-align: center; }

.service_list {
  margin: 20px 20px 0; }

.service_listb {
  background: #ea5621;
  border-radius: 10px;
  padding: 10px;
  text-align: center; }
  .service_listb .service_title {
    margin: 0;
    color: #ffffff; }
    .service_listb .service_title p:last-of-type {
      margin-top: 10px; }
    .service_listb .service_title div {
      display: inline-block;
      margin: 5px 10px 0;
      font-size: 24px;
      font-size: 2.4rem;
      font-weight: bold;
      border: 1px solid #ffffff;
      line-height: 1.5;
      padding: 0.3em 15px 0.1em; }
      @media screen and (min-width: 350.1px) and (max-width: 600px) {
        .service_listb .service_title div {
          font-size: 22px;
          font-size: 2.2rem;
          max-width: 300px;
          width: 100%;
          margin: 5px auto 0; } }
      @media screen and (max-width: 350px) {
        .service_listb .service_title div {
          font-size: 20px;
          font-size: 2.0rem;
          width: 100%;
          margin: 5px 0 0; } }
      .service_listb .service_title div strong {
        font-size: 2.4px;
        font-size: 2.4rem;
        font-weight: bold; }
        @media screen and (min-width: 350.1px) and (max-width: 600px) {
          .service_listb .service_title div strong {
            font-size: 22px;
            font-size: 2.2rem; } }
        @media screen and (max-width: 350px) {
          .service_listb .service_title div strong {
            font-size: 20px;
            font-size: 2.0rem; } }
      .service_listb .service_title div span {
        display: inline-block;
        text-align: left; }
  .service_listb .service_unit {
    background: #ffffff;
    border-radius: 5px;
    margin: 10px 0 0;
    padding: 20px; }
    @media screen and (max-width: 350px) {
      .service_listb .service_unit {
        padding: 10px; } }
    .service_listb .service_unit h3 {
      font-size: 18px;
      font-size: 1.8rem;
      color: #193b80;
      font-weight: bold; }
      @media screen and (max-width: 350px) {
        .service_listb .service_unit h3 {
          font-size: 16px;
          font-size: 1.6rem; } }
      .service_listb .service_unit h3 span {
        display: inline-block;
        text-align: left; }
    .service_listb .service_unit h4 {
      font-weight: bold;
      color: #ff561b;
      margin: 1.5em 0 0; }
      .service_listb .service_unit h4:first-of-type {
        margin: 0.5em 0 0; }
      .service_listb .service_unit h4 span {
        display: inline-block;
        text-align: left; }
    .service_listb .service_unit ul {
      margin: 0.5em auto 0;
      display: inline-block;
      text-align: left; }
      .service_listb .service_unit ul li {
        margin: 0.2em 0 0 1.3em;
        text-indent: -1.3em; }

.point {
  background: #fff2ee;
  margin: 30px 20px 0 20px;
  padding: 15px 40px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px; }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    .point {
      width: calc(100% - 40px);
      display: block;
      padding: 10px 20px; } }
  @media screen and (max-width: 350px) {
    .point {
      width: calc(100% - 40px);
      display: block;
      padding: 10px; } }

.point_title {
  max-width: 350px;
  width: 100%;
  margin: auto; }
  @media screen and (min-width: 600.01px) and (max-width: 760px) {
    .point_title {
      max-width: 285px; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    .point_title {
      max-width: 285px; } }
  @media screen and (max-width: 350px) {
    .point_title {
      max-width: 285px; } }

.pointTxt {
  font-size: 16px;
  font-size: 1.6rem;
  margin: 10px 0 0 0; }

.price {
  text-align: center;
  margin: 30px 20px 0;
  padding: 20px; }
  .price .txt {
    text-align: center; }
    .price .txt div {
      font-size: 18px;
      font-size: 1.8rem; }
      @media screen and (min-width: 350.1px) and (max-width: 600px) {
        .price .txt div {
          font-size: 16px;
          font-size: 1.6rem; } }
      @media screen and (max-width: 350px) {
        .price .txt div {
          font-size: 16px;
          font-size: 1.6rem; } }
      .price .txt div strong {
        font-weight: bold;
        font-size: 32px;
        font-size: 3.2rem; }
        @media screen and (min-width: 760.01px) and (max-width: 930px) {
          .price .txt div strong {
            font-size: 28px;
            font-size: 2.8rem; } }
        @media screen and (min-width: 350.1px) and (max-width: 600px) {
          .price .txt div strong {
            font-size: 26px;
            font-size: 2.6rem; } }
        @media screen and (max-width: 350px) {
          .price .txt div strong {
            font-size: 24px;
            font-size: 2.4rem; } }
        .price .txt div strong small {
          font-size: 18px;
          font-size: 1.8rem; }
          @media screen and (min-width: 350.1px) and (max-width: 600px) {
            .price .txt div strong small {
              font-size: 16px;
              font-size: 1.6rem; } }
          @media screen and (max-width: 350px) {
            .price .txt div strong small {
              font-size: 16px;
              font-size: 1.6rem; } }
    .price .txt p {
      margin: 20px auto 0;
      display: inline-block;
      text-align: left; }

.btn_simu {
  margin: 10px auto; }

.btn_simub {
  position: relative;
  max-width: 360px;
  width: 100%;
  margin: auto; }
  .btn_simub a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    text-decoration: none;
    background: #ffa800;
    border-radius: 5px;
    color: #ffffff; }
    .btn_simub a span {
      position: relative;
      z-index: 5;
      font-weight: bold;
      font-size: 18px;
      font-size: 1.8rem; }
      @media screen and (min-width: 350.1px) and (max-width: 600px) {
        .btn_simub a span {
          font-size: 16px;
          font-size: 1.6rem; } }
      @media screen and (max-width: 350px) {
        .btn_simub a span {
          font-size: 16px;
          font-size: 1.6rem; } }
    .btn_simub a:before {
      display: block;
      content: '';
      width: calc(100% - 8px);
      height: calc(100% - 8px);
      position: absolute;
      top: 3px;
      bottom: 3px;
      right: 3px;
      left: 3px;
      border: 1px solid #ffe58e;
      background: #ffa800;
      background: linear-gradient(0deg, #ffa800 50%, #ffd200 100%); }
