@charset "UTF-8";
/* ==========================================
    top.css フレームCSS
    Last Up Date 2021/07/0303
 --------------------------------------------
    INDEX
 --------------------------------------------
    0.00.00 ALL SETTING
    1.00.00 PC_media screen
        1.01.00 #main_photo の設定
    2.00.00 SP_media screen
        2.01.00 #header の設定
========================================== */
/* ==========================================
0.00.00 ALL SETTING
========================================== */
/* ==========================================
0.01.00 @keyfream
========================================== */
/* ==========================================
1.00.00 PC_media screen
========================================== */
@media screen and (min-width: 769px), print {
  /* ==========================================
      1.01.00 #ct_main の設定
  ========================================== */
  div#ct_main {
    display: block;
    max-width: 1200px;
    width: 100%;
    box-sizing: border-box;
    padding: 200px 50px 60px;
    margin: 0 auto;
    color: #000000; }
    div#ct_main h1 {
      display: flex;
      justify-content: center;
      font: 600 60px Arial, Helvetica, "sans-serif";
      font-weight: 900;
      line-height: 1.0;
      letter-spacing: 0.1rem;
      margin: 0 0 30px; }
    div#ct_main h1 + p {
      display: flex;
      justify-content: center;
      text-align: center;
      font-size: 16px;
      font-weight: bold;
      margin: -20px 0 30px;
    }
    div#ct_main div#form {
      display: block;
      width: 100%; }
      div#ct_main div#form ul {
        width: 100%;
        max-width: 600px;
        margin: 0 auto; }
        div#ct_main div#form ul li {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap; }
          div#ct_main div#form ul li p {
            display: flex;
            width: 100%; }
            div#ct_main div#form ul li p:first-child {
              width: 100%;
              font-size: 13px;
              font-weight: 600;
              margin: 0 0 5px; }
              div#ct_main div#form ul li p:first-child span {
                color: #E10012;
                font-size: 14px;
                margin: 0 0 0 3px; }
            div#ct_main div#form ul li p:not(:first-child) {
              flex-flow: column; }
              div#ct_main div#form ul li p:not(:first-child) input, div#ct_main div#form ul li p:not(:first-child) textarea {
                width: 100%;
                display: block;
                padding: 15px 20px;
                font-size: 16px;
                border: 2px solid #d9d9d9;
                box-sizing: border-box; }
              div#ct_main div#form ul li p:not(:first-child) span {
                background-color: #fce5e7;
                color: #E10012;
                line-height: 1.8;
                box-sizing: border-box;
                padding: 0 5px; }
          div#ct_main div#form ul li:first-child p:not(:first-child) {
            width: calc(50% - 25px); }
          div#ct_main div#form ul li:not(:first-child) {
            margin: 20px 0 0; }
        /**/
        body.confirm div#ct_main div#form ul li p:last-child {
          display: block;
          width: 100%;
          padding: 15px 20px;
          font-size: 16px;
          border: 2px solid #d9d9d9;
          box-sizing: border-box;
        }
        /**/
        div#ct_main div#form ul + div {
          display: block;
          max-width: 600px;
          width: 100%;
          margin: 20px auto 0; }
          div#ct_main div#form ul + div p {
            display: block;
            line-height: 1.7;
            letter-spacing: 0.05rem;
            font-size: 14px;
            font-weight: 600; }
            div#ct_main div#form ul + div p a {
              color: #E10012;
              text-decoration: underline; }
          div#ct_main div#form ul + div button {
            display: flex;
            justify-content: center;
            width: 100%;
            max-width: 600px;
            margin: 15px auto 0;
            padding: 15px 0;
            border-radius: 100px;
            border: none;
            font-size: 16px;
            font-weight: 600;
            color: #FFFFFF;
            background: linear-gradient(90deg, #f2a23e, #c52c6d);
            transition: all 0.5s ease;
            -webkit-transition: all 0.5s ease;
            -o-transition: all 0.5s ease;
            -moz-transition: all 0.5s ease; }
            div#ct_main div#form ul + div button:hover {
              transform: scale(1.05);
              opacity: 0.9; }
          /**/
          body.confirm div#ct_main div#form ul + div a {
            display: flex;
            justify-content: center;
            width: 100%;
            max-width: 600px;
            margin: 30px auto 15px;
            padding: 15px 0;
            border-radius: 100px;
            border: none;
            font-size: 16px;
            font-weight: 600;
            color: #FFFFFF;
            background: rgba(0,0,0,0.7);
            transition: all 0.5s ease;
            -webkit-transition: all 0.5s ease;
            -o-transition: all 0.5s ease;
            -moz-transition: all 0.5s ease;
          }
          body.confirm div#ct_main div#form ul + div a:hover {
            transform: scale(1.05);
            opacity: 0.9;
          }
          /**/
      div#ct_main div#form div.end_text h1 {
        font-size: 40px;
        font-weight: 600;
        margin: 0 0 50px;
      text-align: center; }
        div#ct_main div#form div.end_text h1 + p {
          display: block;
          max-width: 600px;
          width: 100%;
          margin: 0 auto 20px;
          color: #000000;
          text-align: center; }
      div#ct_main div#form div.end_text p {
        font-size: 15px; }
      div#ct_main div#form div.end_text div {
        display: flex;
        justify-content: center;
        box-sizing: border-box;
        max-width: 550px;
        width: 100%;
        padding: 20px;
        margin: 0 auto;
        border: solid thin #000000; }
        div#ct_main div#form div.end_text div span {
          color: #c52c6d;
          text-decoration: underline; }
          div#ct_main div#form div.end_text div span a {
          color: #c52c6d;
          text-decoration: underline; }
      div#ct_main div#form div.end_text > a {
        display: flex;
        justify-content: center;
        width: 100%;
        max-width: 450px;
        margin: 40px auto 0;
        padding: 15px 0;
        border-radius: 100px;
        border: none;
        font-size: 16px;
        font-weight: 600;
        color: #FFFFFF;
        background: linear-gradient(90deg, #f2a23e, #c52c6d); }
        div#ct_main div#form div.end_text a:hover {
          transform: scale(1.05);
          opacity: 0.9; }

  ::-webkit-input-placeholder {
    color: #AAABAB;
    letter-spacing: 0.1rem; }

  ::-moz-placeholder {
    color: #AAABAB;
    opacity: 1;
    letter-spacing: 0.1rem; }

  :-ms-input-placeholder {
    color: #AAABAB;
    letter-spacing: 0.1rem; } }
/* ==========================================
2.00.00 SP_media screen
========================================== */
@media screen and (max-width: 768px) {
  /* ==========================================
      2.01.00 #ct_main の設定
  ========================================== */
  div#ct_main {
    display: block;
    max-width: 1200px;
    width: 100%;
    box-sizing: border-box;
    padding: 130px 20px 40px;
    border-bottom: solid thin rgba(0,0,0,0.2);
    margin: 0 auto;
    color: #000000; }
    div#ct_main h1 {
      display: flex;
      justify-content: center;
      font: 600 40px Arial, Helvetica, "sans-serif";
      font-weight: 900;
      line-height: 1.0;
      letter-spacing: 0.1rem;
      margin: 0 0 30px; }
    div#ct_main h1 + p {
      display: flex;
      justify-content: center;
      text-align: center;
      font-size: 16px;
      font-weight: bold;
      margin: -20px 0 30px;
    }
    div#ct_main div#form {
      display: block;
      width: 100%; }
      div#ct_main div#form ul {
        width: 100%;
        max-width: 600px;
        margin: 0 auto; }
        div#ct_main div#form ul li {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap; }
          div#ct_main div#form ul li p {
            display: flex;
            width: 100%; }
            div#ct_main div#form ul li p:first-child {
              width: 100%;
              font-size: 13px;
              font-weight: 600;
              margin: 0 0 5px; }
              div#ct_main div#form ul li p:first-child span {
                color: #E10012;
                font-size: 14px;
                margin: 0 0 0 3px; }
            div#ct_main div#form ul li p:not(:first-child) {
              flex-flow: column; }
              div#ct_main div#form ul li p:not(:first-child) input, div#ct_main div#form ul li p:not(:first-child) textarea {
                width: 100%;
                display: block;
                padding: 15px 20px;
                font-size: 16px;
                border: 2px solid #d9d9d9;
                box-sizing: border-box; }
              div#ct_main div#form ul li p:not(:first-child) span {
                background-color: #fce5e7;
                color: #E10012;
                line-height: 1.8;
                box-sizing: border-box;
                padding: 0 5px; }
          div#ct_main div#form ul li:first-child p:not(:first-child) {
            width: calc(50% - 10px); }
          div#ct_main div#form ul li:not(:first-child) {
            margin: 20px 0 0; }
          /**/
          body.confirm div#ct_main div#form ul li p:last-child {
            display: block;
            width: 100%;
            padding: 15px 20px;
            font-size: 16px;
            border: 2px solid #d9d9d9;
            box-sizing: border-box;
          }
          /**/
        div#ct_main div#form ul + div {
          display: block;
          max-width: 600px;
          width: 100%;
          margin: 20px auto 0; }
          div#ct_main div#form ul + div p {
            display: block;
            line-height: 1.7;
            letter-spacing: 0.05rem;
            font-size: 14px;
            font-weight: 600; }
            div#ct_main div#form ul + div p a {
              color: #E10012;
              text-decoration: underline; }
          div#ct_main div#form ul + div button {
            display: flex;
            justify-content: center;
            width: 100%;
            max-width: 600px;
            margin: 15px auto 0;
            padding: 15px 0;
            border-radius: 100px;
            border: none;
            font-size: 15px;
            font-weight: 600;
            color: #FFFFFF;
            background: linear-gradient(90deg, #f2a23e, #c52c6d);
            transition: all 0.5s ease;
            -webkit-transition: all 0.5s ease;
            -o-transition: all 0.5s ease;
            -moz-transition: all 0.5s ease; }
            div#ct_main div#form ul + div button:hover {
              transform: scale(1.05);
              opacity: 0.9; }

            /**/
            body.confirm div#ct_main div#form ul + div a {
              display: flex;
              justify-content: center;
              width: 100%;
              max-width: 600px;
              margin: 30px auto 15px;
              padding: 15px 0;
              border-radius: 100px;
              border: none;
              font-size: 16px;
              font-weight: 600;
              color: #FFFFFF;
              background: rgba(0,0,0,0.7);
              transition: all 0.5s ease;
              -webkit-transition: all 0.5s ease;
              -o-transition: all 0.5s ease;
              -moz-transition: all 0.5s ease;
            }
            body.confirm div#ct_main div#form ul + div a:hover {
              transform: scale(1.05);
              opacity: 0.9;
            }
          /**/
      div#ct_main div#form div.end_text h1 {
        font-size: 30px;
        font-weight: 600;
        margin: 0 0 20px;
        text-align: center;
        line-height: 1.3; }
        div#ct_main div#form div.end_text h1 + p {
          display: block;
          max-width: 600px;
          width: 100%;
          margin: 0 auto 20px;
          color: #000000;
          text-align: center; }
      div#ct_main div#form div.end_text p {
        font-size: 14px;
        color: #000000; }
      div#ct_main div#form div.end_text div {
        display: flex;
        justify-content: center;
        box-sizing: border-box;
        max-width: 550px;
        width: 100%;
        padding: 20px;
        margin: 0 auto;
        border: solid thin #000000; }
        div#ct_main div#form div.end_text div span {
          color: #c52c6d;
          text-decoration: underline; }
          div#ct_main div#form div.end_text div span a {
          color: #c52c6d;
          text-decoration: underline; }
      div#ct_main div#form div.end_text > a {
        display: flex;
        justify-content: center;
        width: 100%;
        max-width: 450px;
        margin: 30px auto 0;
        padding: 15px 0;
        border-radius: 100px;
        border: none;
        font-size: 15px;
        font-weight: 600;
        color: #FFFFFF;
        background: linear-gradient(90deg, #f2a23e, #c52c6d); }
        div#ct_main div#form div.end_text a:hover {
          transform: scale(1.05);
          opacity: 0.9; }

  ::-webkit-input-placeholder {
    color: #AAABAB;
    letter-spacing: 0.1rem; }

  ::-moz-placeholder {
    color: #AAABAB;
    opacity: 1;
    letter-spacing: 0.1rem; }

  :-ms-input-placeholder {
    color: #AAABAB;
    letter-spacing: 0.1rem; } }
@media screen and (max-width: 451px) {
  div.end_text p br:nth-child(n + 3) {
    display: none; } }
