@charset "UTF-8";
p, h2, span {
  font-family: "Noto Serif JP","Shippori Mincho","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
  text-align: center;
  font-weight: 400; }

.main-wrap {
  position: relative;
  display: flex;
  flex-flow: column;
  min-height: 100vh; }
  .main-wrap #contents {
    flex: 1;
    display: flex;
    align-items: center;
    background-image: url(../img/bg/bg01.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 70px 0; }
    .main-wrap #contents #main {
      background: #fff;
      display: block;
      margin: 0 auto;
      width: 90%;
      max-width: 1000px;
      padding: 110px 0; }
      .main-wrap #contents #main h2 {
        font-size: 30px;
        letter-spacing: 0.1em;
        display: block;
        border-top: 0;
        border-bottom: 1px solid #43484c;
        color: #43484c;
        width: 80%;
        max-width: 760px;
        margin: 0 auto 40px;
        padding-bottom: 20px; }
      .main-wrap #contents #main > p {
        font-size: 18px;
        line-height: 34px;
        letter-spacing: .1em;
        color: #43484c; }
      .main-wrap #contents #main .link-bar {
        font-size: 16px;
        display: flex;
        align-items: center;
        align-content: center;
        justify-content: center;
        position: relative;
        width: 80%;
        max-width: 510px;
        padding: 15px 0;
        margin: 60px auto 0;
        background-image: linear-gradient(90deg, #1f1d1c, #676c70);
        color: #fff;
        text-decoration: none; }
        .main-wrap #contents #main .link-bar:after {
          position: absolute;
          right: 20px;
          display: block;
          content: "";
          padding: 15px 0;
          width: 30px;
          border-top: 1px solid #fff;
          border-right: 1px solid #fff;
          transform: rotate(45deg); }
        .main-wrap #contents #main .link-bar:hover {
          opacity: .5;
          transition: .5s; }

/*PC ONLY*/
@media screen and (min-width: 751px) {
  .smart_on {
    display: none !important; } }
/*SP ONLY*/
@media screen and (max-width: 750px) {
  body {
    font-size: 20px; }

  .pc_on {
    display: none !important; }

  .main-wrap #contents #main h2 {
    font-size: 2.5em; }
  .main-wrap #contents #main > p {
    font-size: 1.25em;
    line-height: 1.75em; }
  .main-wrap #contents #main .link-bar {
    font-size: 1.35em;
    padding: 25px 0; } }

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