#service .main-contents h1 {
  background-image: url(../img/bg_main.jpg); }

#service .main-contents.page-index .main-sect {
  padding: 65px 0 80px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 100%; }
  #service .main-contents.page-index .main-sect .ttl01 {
    margin: 0 0 25px;
    font-size: 300%; }
    #service .main-contents.page-index .main-sect .ttl01 span {
      font-size: 35.7142857143%;
      line-height: 1; }
  #service .main-contents.page-index .main-sect .text {
    margin: 0 0 24px;
    color: #363636;
    line-height: 1.5;
    text-align: center; }
  #service .main-contents.page-index .main-sect .icon-arrow02 {
    margin: 0; }
    #service .main-contents.page-index .main-sect .icon-arrow02 a {
      display: block;
      margin: 0 auto;
      padding: 20px 0;
      border: 1px solid #bebebe;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      -ms-box-sizing: border-box;
      -o-box-sizing: border-box;
      box-sizing: border-box;
      position: relative;
      zoom: 1;
      background: #fff;
      font-weight: bold;
      line-height: 1.5;
      text-align: center; }
      #service .main-contents.page-index .main-sect .icon-arrow02 a:hover {
        opacity: 1; }
      #service .main-contents.page-index .main-sect .icon-arrow02 a span {
        font-size: 100%; }
      #service .main-contents.page-index .main-sect .icon-arrow02 a sub {
        font-size: 78.5714285714%; }

#service .main-contents.page-index .sect-wedding {
  background-color: #edf8f9;
  /*background-image: url(../img/bg_cont01.png);*/
  background-position: right top;
  background-size: auto; }
  #service .main-contents.page-index .sect-wedding .contents .text {
    margin: 0 0 35px; }
  #service .main-contents.page-index .sect-wedding .contents section {
    position: relative; }
    #service .main-contents.page-index .sect-wedding .contents section h3 {
      padding: 0 0 16px;
      background: #51bac9;
      color: #fff;
      font-size: 185.714285714%;
      font-weight: normal;
      line-height: 1;
      text-align: center; }
      #service .main-contents.page-index .sect-wedding .contents section h3 strong {
        display: inline-block;
        font-size: 176.923076923%;
        font-weight: normal;
        line-height: 1; }
    #service .main-contents.page-index .sect-wedding .contents section .cont {
      padding: 30px 50px;
      background: #fff; }
      #service .main-contents.page-index .sect-wedding .contents section .cont table {
        table-layout: fixed;
        width: 100%;
        margin: 0;
        border-collapse: separate;
        border-spacing: 10px; }
        #service .main-contents.page-index .sect-wedding .contents section .cont table:first-child {
          margin: 0; }
        #service .main-contents.page-index .sect-wedding .contents section .cont table th {
          width: 220px;
          color: #000;
          font-size: 135.714285714%;
          font-weight: normal;
          line-height: 1.211;
          text-align: left;
          vertical-align: middle; }
          #service .main-contents.page-index .sect-wedding .contents section .cont table th[rowspan='2'] {
            vertical-align: baseline; }
        #service .main-contents.page-index .sect-wedding .contents section .cont table td a {
          margin: 0;
          padding-left: 20px;
          text-align: left; }
  #service .main-contents.page-index .sect-wedding .contents .phase01, #service .main-contents.page-index .sect-wedding .contents .phase02 {
    margin: 0 0 30px;
    /*&:after {
              content: "";
              display: block;
              width: 0;
              height: 0;
              margin: 0 auto;
              border-style: solid solid none;
              border-color: #fff transparent transparent;
              border-width: 39px 79px 0;
            }*/ }
  #service .main-contents.page-index .sect-wedding .contents .goal h3 {
    padding: 18px 0; }
  #service .main-contents.page-index .sect-wedding .contents .goal table td:before {
    content: "";
    display: block;
    float: left;
    width: 1px;
    height: 46px;
    background: #bebebe; }
  #service .main-contents.page-index .sect-wedding .contents .goal table td p {
    margin: 0 12px 0 40px; }

#service .main-contents.page-index .sect-produce {
  background-color: #eef0fa;
  /*background-image: url(../img/bg_cont02.png);*/ }
  #service .main-contents.page-index .sect-produce .icon-arrow02 a, #service .main-contents.page-index .sect-produce .icon-arrow02 a span:before {
    color: #6f79ad; }
  #service .main-contents.page-index .sect-produce .icon-arrow02 a {
    width: 320px; }
  @media screen and (min-width: 1400px) {
    #service .main-contents.page-index .sect-produce {
      background-position: center top;
      background-size: 100% auto; } }

#service .main-contents.page-index .sect-restaurant {
  background-color: #e4f7ec;
  /*background-image: url(../img/bg_cont03.png);*/ }
  #service .main-contents.page-index .sect-restaurant .icon-arrow02 a, #service .main-contents.page-index .sect-restaurant .icon-arrow02 a span:before {
    color: #43b370; }
  #service .main-contents.page-index .sect-restaurant .icon-arrow02 a {
    width: 320px; }

@media screen and (max-width: 767px) {
  #service .main-contents.page-index .main-sect {
    padding: 30px 0 40px; }
    #service .main-contents.page-index .main-sect .ttl01 {
      margin: 0 0 16px;
      font-size: 207.142857143%; }
    #service .main-contents.page-index .main-sect .text {
      margin: 0 0 16px;
      text-align: left; }
    #service .main-contents.page-index .main-sect .icon-arrow02 a {
      width: 100%;
      padding: 12px 0; }
      #service .main-contents.page-index .main-sect .icon-arrow02 a sub {
        font-size: 71.4285714286%; }
  #service .main-contents.page-index .sect-wedding {
    background-size: 100% auto; }
    #service .main-contents.page-index .sect-wedding .contents .text {
      margin: 0 0 20px; }
    #service .main-contents.page-index .sect-wedding .contents section h3 {
      padding: 7px 0 12px;
      font-size: 128.571428571%;
      font-weight: normal;
      line-height: 1;
      text-align: center; }
      #service .main-contents.page-index .sect-wedding .contents section h3 strong {
        font-size: 140%; }
    #service .main-contents.page-index .sect-wedding .contents section .cont {
      padding: 20px; }
      #service .main-contents.page-index .sect-wedding .contents section .cont table {
        margin: 20px 0 0;
        display: block;
        table-layout: auto;
        border-collapse: collapse;
        border-spacing: 0; }
        #service .main-contents.page-index .sect-wedding .contents section .cont table tbody, #service .main-contents.page-index .sect-wedding .contents section .cont table tr {
          display: block;
          overflow: hidden; }
        #service .main-contents.page-index .sect-wedding .contents section .cont table th, #service .main-contents.page-index .sect-wedding .contents section .cont table td {
          display: block;
          float: left;
          clear: both; }
        #service .main-contents.page-index .sect-wedding .contents section .cont table th {
          width: 100%;
          font-size: 107.142857143%;
          vertical-align: baseline; }
        #service .main-contents.page-index .sect-wedding .contents section .cont table td {
          width: 100%;
          margin: 8px 0 0; }
          #service .main-contents.page-index .sect-wedding .contents section .cont table td a {
            padding-left: 25px;
            padding-right: 10px; }
            #service .main-contents.page-index .sect-wedding .contents section .cont table td a span {
              display: block;
              text-indent: -15px; }
    #service .main-contents.page-index .sect-wedding .contents .phase01, #service .main-contents.page-index .sect-wedding .contents .phase02 {
      margin: 0 0 20px; }
      #service .main-contents.page-index .sect-wedding .contents .phase01:after, #service .main-contents.page-index .sect-wedding .contents .phase02:after {
        border-width: 19px 39px 0; }
    #service .main-contents.page-index .sect-wedding .contents .goal h3 {
      padding: 13px 0; }
    #service .main-contents.page-index .sect-wedding .contents .goal table td:before {
      content: "";
      display: none; }
    #service .main-contents.page-index .sect-wedding .contents .goal table td p {
      margin: 0; }
  #service .main-contents.page-index .sect-produce {
    background-color: #eef0fa;
    /*background-image: url(../img/bg_cont02.png);*/ }
    #service .main-contents.page-index .sect-produce .icon-arrow02 a, #service .main-contents.page-index .sect-produce .icon-arrow02 a span:before {
      color: #6f79ad; }
  #service .main-contents.page-index .sect-restaurant {
    background-color: #e4f7ec;
    /*background-image: url(../img/bg_cont03.png);*/ }
    #service .main-contents.page-index .sect-restaurant .icon-arrow02 a, #service .main-contents.page-index .sect-restaurant .icon-arrow02 a span:before {
      color: #43b370; } }

.icon-arrow-shooting {
  width: 600px;
  margin: 50px auto 0;
  background-color: #fff;
  border: 1px solid #bebebe;
  text-align: center; }
  .icon-arrow-shooting a {
    color: #363636; }
    .icon-arrow-shooting a span {
      padding-top: 20px;
      padding-bottom: 20px;
      display: block;
      font-size: 138.461538462%; }

@media screen and (max-width: 767px) {
  .icon-arrow-shooting {
    width: 100%;
    margin: 30px auto 70px;
    background-color: #fff;
    border: 1px solid #bebebe;
    text-align: center; }
    .icon-arrow-shooting a {
      color: #363636; }
      .icon-arrow-shooting a span {
        font-size: 100%; } }
