@charset "UTF-8";
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0; }

html, body {
  height: 100%;
  line-height: 1.7;
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  /*font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;*/ }

img {
  display: inline-block;
  max-width: 100%;
  vertical-align: bottom; }

h1, p, th, td, li, dt, dd, a {
  letter-spacing: 0.1em; }

ul {
  list-style: none; }

a {
  text-decoration: none;
  color: #000; }
  a:hover, a:visited {
    color: #000; }

@media screen and (min-width: 541px) {
  .pc {
    display: block !important; } }
@media screen and (max-width: 540px) {
  .pc {
    display: none !important; } }

@media screen and (min-width: 541px) {
  .sp {
    display: none !important; } }
@media screen and (max-width: 540px) {
  .sp {
    display: block !important; } }

body {
  background-color: #efefef; }
  body .wrap {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    background-color: #fff; }
    body .wrap section {
      text-align: center;
      margin: 0 auto; }
      @media screen and (max-width: 540px) {
        body .wrap section {
          padding: 0 10px; } }
      body .wrap section .headingBlock {
        padding: 20px 0; }
        body .wrap section .headingBlock h1 {
          font-size: 24px;
          color: #B1885B;
          font-weight: 500; }
          @media screen and (max-width: 540px) {
            body .wrap section .headingBlock h1 {
              font-size: 22px; } }
      @media screen and (max-width: 540px) {
        body .wrap section .areaBlock {
          font-size: 14px; } }
      body .wrap section .mainVisual {
        max-width: 1000px;
        margin: 40px auto; }
        @media screen and (max-width: 540px) {
          body .wrap section .mainVisual {
            margin: 40px auto 20px; } }
      body .wrap section .thumBlock {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr; }
        @media screen and (max-width: 540px) {
          body .wrap section .thumBlock {
            grid-template-columns: 1fr;
            gap: 10px 0; } }
      body .wrap section#outline {
        max-width: 850px;
        text-align: center;
        margin: 0 auto; }
        @media screen and (max-width: 540px) {
          body .wrap section#outline {
            padding: 0 10px; } }
        body .wrap section#outline .headingBlock {
          padding: 20px 0; }
          body .wrap section#outline .headingBlock h1 {
            font-size: 24px; }
            @media screen and (max-width: 540px) {
              body .wrap section#outline .headingBlock h1 {
                font-size: 22px; } }
        body .wrap section#outline .tableBlock table {
          width: 100%;
          border-collapse: collapse; }
          body .wrap section#outline .tableBlock table tr th, body .wrap section#outline .tableBlock table tr td {
            border: solid 1px #d2cecd;
            padding: 15px 20px; }
            @media screen and (max-width: 540px) {
              body .wrap section#outline .tableBlock table tr th, body .wrap section#outline .tableBlock table tr td {
                width: 100% !important;
                display: block; } }
          body .wrap section#outline .tableBlock table tr th {
            width: 30%;
            background-color: #e2dddb;
            text-align: right; }
            @media screen and (max-width: 540px) {
              body .wrap section#outline .tableBlock table tr th {
                text-align: left;
                border: none; } }
          body .wrap section#outline .tableBlock table tr td {
            width: 70%;
            text-align: left; }
            @media screen and (max-width: 540px) {
              body .wrap section#outline .tableBlock table tr td {
                border-top: none;
                border-bottom: none; } }
            body .wrap section#outline .tableBlock table tr td span {
              display: block; }
          @media screen and (max-width: 540px) {
            body .wrap section#outline .tableBlock table tr:last-child td {
              border-top: none;
              border-bottom: solid 1px #d2cecd; } }
        body .wrap section#outline .tableBlock .caution {
          margin: 15px 0;
          padding: 0 5px; }
          body .wrap section#outline .tableBlock .caution ul {
            text-align: left; }
            body .wrap section#outline .tableBlock .caution ul li {
              padding-left: 1.1em;
              text-indent: -1.1em; }
    body .wrap footer {
      text-align: center;
      margin: 80px 0 0; }
      body .wrap footer .wrap {
        padding: 0 10px; }
        body .wrap footer .wrap .action {
          border-top: solid 2px #b89361;
          padding: 75px 0 40px; }
          @media screen and (max-width: 540px) {
            body .wrap footer .wrap .action {
              padding: 65px 0 40px; } }
          body .wrap footer .wrap .action .detail dt {
            font-size: 24px;
            font-weight: bold; }
            @media screen and (max-width: 540px) {
              body .wrap footer .wrap .action .detail dt {
                font-size: 22px; } }
            body .wrap footer .wrap .action .detail dt span {
              display: block;
              font-size: 18px; }
          body .wrap footer .wrap .action .detail dd.time {
            margin: 30px 0 40px; }
          body .wrap footer .wrap .action .detail dd.btn a {
            display: block;
            line-height: 70px;
            max-width: 400px;
            background-color: #b89361;
            color: #fff;
            font-size: 20px;
            margin: 0 auto; }
          body .wrap footer .wrap .action .lead {
            text-align: center;
            padding: 40px 0 0; }
            @media screen and (max-width: 540px) {
              body .wrap footer .wrap .action .lead {
                text-align: left;
                padding: 40px 5px 0; } }
          body .wrap footer .wrap .action .contact {
            margin: 40px auto 0; }
            body .wrap footer .wrap .action .contact dd.tel {
              margin: 15px 0 0;
              display: grid;
              grid-template-columns: 35px auto;
              justify-content: center;
              align-items: center; }
              body .wrap footer .wrap .action .contact dd.tel .ico {
                margin: 0 5px 0 0; }
              body .wrap footer .wrap .action .contact dd.tel a {
                pointer-events: none; }
                @media screen and (max-width: 540px) {
                  body .wrap footer .wrap .action .contact dd.tel a {
                    text-decoration: underline;
                    pointer-events: auto; } }
        body .wrap footer .wrap .company {
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 40px 70px; }
          @media screen and (max-width: 540px) {
            body .wrap footer .wrap .company {
              flex-direction: column; } }
          body .wrap footer .wrap .company .logo_01 img {
            max-width: 282px; }
          body .wrap footer .wrap .company .logo_02 img {
            max-width: 234px; }
      body .wrap footer .copy {
        margin: 40px 0 0;
        padding: 0 0 10px; }
        body .wrap footer .copy p {
          font-size: 10px; }
