@charset "UTF-8";
body {
  margin: 0;
  padding: 0;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Osaka", "Osaka－等幅", "Osaka-Mono", "MS UI Gothic", "ＭＳ Ｐゴシック", "MS PGothic", "ＭＳ ゴシック", "MS Gothic", sans-serif;
  background: #000127;
  background-image: url("../img/bg.png");
  background-repeat: repeat;
  position: relative; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

.wrap {
  margin: 0 auto; }
  @media only screen and (max-width: 767px) {
    .wrap {
      padding: 30px 10px 40px; } }
  @media only screen and (min-width: 768px) {
    .wrap {
      padding: 80px 0 80px;
      max-width: 900px; } }

.wrap_other {
  margin: 0 auto; }
  @media only screen and (max-width: 767px) {
    .wrap_other {
      padding: 30px 10px 50px; } }
  @media only screen and (min-width: 768px) {
    .wrap_other {
      padding: 90px 0 80px;
      max-width: 900px; } }

.ttl {
  margin: 0 auto;
  padding: 0;
  text-align: center;
  position: relative;
  z-index: 10;
  filter: drop-shadow(12px 11px 3px rgba(0, 0, 0, 0.9)); }
  @media only screen and (max-width: 767px) {
    .ttl {
      width: 88%; } }

.hero {
  position: relative;
  z-index: 10;
  filter: drop-shadow(12px 11px 3px rgba(0, 0, 0, 0.9)); }
  @media only screen and (max-width: 767px) {
    .hero {
      margin: 20px 0 45px; } }
  @media only screen and (min-width: 768px) {
    .hero {
      margin: 30px 0 75px; } }

.bg_space {
  position: absolute;
  z-index: 0;
  top: 3%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%); }
  @media only screen and (min-width: 768px) {
    .bg_space {
      width: 1100px; } }

.content {
  position: relative;
  z-index: 10;
  background: #fff;
  border: #000 solid 4px;
  margin: 0;
  box-sizing: border-box;
  background-image: url("../img/content_bg.png");
  background-repeat: repeat;
  background-position: top center; }
  @media only screen and (max-width: 767px) {
    .content {
      padding: 30px 20px; } }
  @media only screen and (min-width: 768px) {
    .content {
      margin: 0 0 60px;
      padding: 40px 50px; } }
  .content .box {
    margin: 0 0 45px;
    padding: 0; }
    .content .box:last-child {
      margin: 0; }
    .content .box h1 {
      border-bottom: #000 solid 1px;
      margin: 0 0 25px;
      padding: 0 0 5px; }
    .content .box h3 {
      margin: 0 0 15px;
      padding: 0; }
      @media only screen and (max-width: 767px) {
        .content .box h3 {
          font-size: 1.0rem; } }
      @media only screen and (min-width: 768px) {
        .content .box h3 {
          font-size: 1.1rem; } }
    .content .box p {
      margin: 0;
      padding: 0;
      font-size: 15px; }
    .content .box dl {
      padding: 10px 0 10px;
      display: flex;
      width: 100%;
      border-bottom: #E8E8EA solid 1px; }
      .content .box dl:last-of-type {
        border: none; }
      @media only screen and (max-width: 767px) {
        .content .box dl {
          flex-direction: column;
          margin: 0 0 10px; } }
      @media only screen and (min-width: 768px) {
        .content .box dl {
          margin: 0 0 5px; } }
      .content .box dl dt {
        margin: 0 8px 0 0;
        padding: 0;
        font-weight: bold; }
      .content .box dl dd {
        margin: 0;
        padding: 0; }
    .content .box ul {
      list-style: disc;
      margin: 0 0 0 20px;
      padding: 0; }
      .content .box ul li {
        margin: 0 0 5px;
        font-size: 15px; }
    .content .box .twitter {
      text-decoration: none;
      color: #4e67a9; }
      .content .box .twitter:hover {
        text-decoration: underline; }
  .content .link {
    margin: 35px auto 0; }
    .content .link a {
      font-size: 1.0rem;
      margin: auto;
      border-radius: 50px;
      cursor: pointer;
      background: #4e67a9;
      color: #fff;
      box-sizing: border-box;
      text-decoration: none; }
      @media only screen and (max-width: 767px) {
        .content .link a {
          width: 220px;
          height: 45px;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center;
          margin: 0 auto 10px;
          font-size: 14px; } }
      @media only screen and (min-width: 768px) {
        .content .link a {
          width: 390px;
          height: 48px;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center; }
          .content .link a:hover {
            -ms-filter: brightness(1.2);
            -webkit-filter: brightness(1.2);
            filter: brightness(1.2); } }

.otoiawase {
  background-image: none; }
  .otoiawase h2 {
    border-left: #0D2D81 solid 5px;
    padding: 0 0 0 15px; }
    @media only screen and (max-width: 767px) {
      .otoiawase h2 {
        margin: 0 0 25px;
        font-size: 1.3rem; } }
    @media only screen and (min-width: 768px) {
      .otoiawase h2 {
        margin: 0 0 30px;
        font-size: 1.5rem; } }
  .otoiawase p {
    margin: 0 0 25px;
    padding: 0;
    font-size: 0.9rem; }
  .otoiawase table {
    width: 100%; }
    .otoiawase table tr {
      display: flex;
      width: 100%;
      margin: 0 0 20px;
      padding: 0 0 20px;
      border-bottom: #e6e6e6 solid 1px; }
      .otoiawase table tr:last-child {
        margin: 0;
        padding: 0;
        border: none; }
      @media only screen and (max-width: 767px) {
        .otoiawase table tr {
          flex-direction: column; } }
      @media only screen and (max-width: 767px) {
        .otoiawase table tr th {
          width: 100%;
          text-align: left;
          margin: 0 0 10px;
          font-size: 1.05rem; } }
      @media only screen and (min-width: 768px) {
        .otoiawase table tr th {
          width: 25%;
          text-align: right; } }
      .otoiawase table tr td {
        word-break: break-all; }
        @media only screen and (max-width: 767px) {
          .otoiawase table tr td {
            width: 100%; } }
        @media only screen and (min-width: 768px) {
          .otoiawase table tr td {
            width: 75%;
            margin-left: 30px; } }
  .otoiawase .hissu {
    background: #b00101;
    color: #fff;
    height: 26px;
    border-radius: 13px;
    margin-left: 10px;
    padding: 5px 10px;
    box-sizing: border-box;
    font-weight: normal; }
    @media only screen and (max-width: 767px) {
      .otoiawase .hissu {
        font-size: 0.5rem; } }
    @media only screen and (min-width: 768px) {
      .otoiawase .hissu {
        font-size: 0.5rem; } }
  .otoiawase input[type=text], .otoiawase input[type=email] {
    -webkit-appearance: none;
    border: none;
    font-size: 0.95rem;
    padding: 11px 14px;
    border-radius: 5px;
    line-height: 1;
    background: #f5f5f5;
    box-sizing: border-box;
    width: 100%; }
    .otoiawase input[type=text]:focus, .otoiawase input[type=email]:focus {
      outline: 0; }
  .otoiawase textarea {
    -webkit-appearance: none;
    border: none;
    font-size: 0.95rem;
    padding: 11px 14px;
    border-radius: 5px;
    line-height: 1.4;
    width: 100%;
    background: #f1f1f1;
    box-sizing: border-box;
    height: 200px; }
    .otoiawase textarea:focus {
      outline: 0; }
  .otoiawase .submit_container {
    margin: 35px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    text-align: center; }
    @media only screen and (min-width: 768px) {
      .otoiawase .submit_container {
        max-width: 500px; } }
    .otoiawase .submit_container input[type=submit] {
      -webkit-appearance: none;
      font-size: 1.0rem;
      margin: auto;
      border: none;
      border-radius: 50px;
      cursor: pointer;
      color: #fff;
      box-sizing: border-box; }
      @media only screen and (max-width: 767px) {
        .otoiawase .submit_container input[type=submit] {
          width: 145px;
          height: 45px;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center;
          margin: 0 auto 10px;
          font-size: 0.85rem; } }
      @media only screen and (min-width: 768px) {
        .otoiawase .submit_container input[type=submit] {
          width: 220px;
          height: 48px;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 1.0rem; } }
    .otoiawase .submit_container .submit {
      background: #4e67a9; }
      .otoiawase .submit_container .submit:hover {
        -ms-filter: brightness(1.2);
        -webkit-filter: brightness(1.2);
        filter: brightness(1.2); }
    .otoiawase .submit_container .reset {
      background: #ccc; }
      .otoiawase .submit_container .reset:hover {
        opacity: 0.8; }

.obo_form {
  background: #fff;
  box-sizing: border-box; }
  @media only screen and (max-width: 767px) {
    .obo_form {
      margin: 0;
      padding: 30px 20px; } }
  @media only screen and (min-width: 768px) {
    .obo_form {
      margin: 0;
      padding: 40px 50px; } }
  .obo_form h2 {
    border-left: #0D2D81 solid 5px;
    padding: 0 0 0 15px; }
    @media only screen and (max-width: 767px) {
      .obo_form h2 {
        margin: 0 0 25px;
        font-size: 1.3rem; } }
    @media only screen and (min-width: 768px) {
      .obo_form h2 {
        margin: 0 0 30px;
        font-size: 1.5rem; } }
  .obo_form p {
    font-size: 0.85rem;
    margin: 0 0 30px;
    line-height: 1.6; }
  .obo_form textarea {
    -webkit-appearance: none;
    border: none;
    font-size: 0.95rem;
    padding: 11px 14px;
    border-radius: 8px;
    line-height: 1.4;
    width: 100%;
    background: #f5f5f5;
    box-sizing: border-box;
    height: 100px; }
    .obo_form textarea:focus {
      outline: 0; }
  .obo_form .submit {
    margin: 35px auto 0; }
    .obo_form .submit input[type=submit] {
      -webkit-appearance: none;
      font-size: 1.0rem;
      margin: auto;
      border: none;
      border-radius: 50px;
      cursor: pointer;
      background: #4e67a9;
      color: #fff;
      box-sizing: border-box; }
      @media only screen and (max-width: 767px) {
        .obo_form .submit input[type=submit] {
          width: 140px;
          height: 45px;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center;
          margin: 0 auto 10px;
          font-size: 14px; } }
      @media only screen and (min-width: 768px) {
        .obo_form .submit input[type=submit] {
          width: 220px;
          height: 48px;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center; }
          .obo_form .submit input[type=submit]:hover {
            -ms-filter: brightness(1.2);
            -webkit-filter: brightness(1.2);
            filter: brightness(1.2); } }

.yoyaku_form {
  background: #fff;
  box-sizing: border-box; }
  @media only screen and (max-width: 767px) {
    .yoyaku_form {
      margin: 0;
      padding: 30px 20px; } }
  @media only screen and (min-width: 768px) {
    .yoyaku_form {
      margin: 0;
      padding: 40px 50px; } }
  .yoyaku_form h2 {
    border-left: #0D2D81 solid 5px;
    padding: 0 0 0 15px; }
    @media only screen and (max-width: 767px) {
      .yoyaku_form h2 {
        margin: 0 0 25px;
        font-size: 1.3rem; } }
    @media only screen and (min-width: 768px) {
      .yoyaku_form h2 {
        margin: 0 0 30px;
        font-size: 1.5rem; } }
  .yoyaku_form .info table {
    width: 100%;
    border-collapse: collapse; }
    .yoyaku_form .info table tr {
      width: 100%;
      font-size: 0.9rem; }
    .yoyaku_form .info table th, .yoyaku_form .info table td {
      padding: 7px 15px;
      box-sizing: border-box; }
      @media only screen and (max-width: 767px) {
        .yoyaku_form .info table th, .yoyaku_form .info table td {
          width: 100%;
          display: block;
          border-top: #b5b5b5 solid 1px;
          border-right: #b5b5b5 solid 1px;
          border-left: #b5b5b5 solid 1px; } }
      @media only screen and (min-width: 768px) {
        .yoyaku_form .info table th, .yoyaku_form .info table td {
          border: #b5b5b5 solid 1px; } }
    .yoyaku_form .info table th {
      background: #f1f1f1;
      font-weight: bold; }
      @media only screen and (min-width: 768px) {
        .yoyaku_form .info table th {
          width: 20%; } }
    .yoyaku_form .info table td {
      margin: 0; }
      @media only screen and (min-width: 768px) {
        .yoyaku_form .info table td {
          width: 80%; } }
  .yoyaku_form .info .sponly {
    border-bottom: #ccc solid 1px; }
  .yoyaku_form .note {
    background: #f3f3f3;
    margin: 20px 0 40px;
    box-sizing: border-box; }
    @media only screen and (max-width: 767px) {
      .yoyaku_form .note {
        padding: 20px 20px; } }
    @media only screen and (min-width: 768px) {
      .yoyaku_form .note {
        padding: 20px 25px; } }
    .yoyaku_form .note h3 {
      margin: 0 0 10px;
      padding: 0;
      font-size: 0.9rem;
      color: #0D2D81; }
    .yoyaku_form .note ul {
      list-style: disc;
      margin: 0 0 0 20px;
      padding: 0; }
      .yoyaku_form .note ul li {
        margin: 0 0 5px;
        font-size: 0.85rem; }
  @media only screen and (max-width: 767px) {
    .yoyaku_form .form {
      margin: 0 0 20px; } }
  @media only screen and (min-width: 768px) {
    .yoyaku_form .form {
      margin: 0 0 20px; } }
  .yoyaku_form .form p {
    margin: 0 0 25px;
    padding: 0;
    font-size: 0.9rem; }
  .yoyaku_form .form table {
    width: 100%;
    border-collapse: collapse; }
    .yoyaku_form .form table tr {
      display: flex;
      width: 100%;
      margin: 0 0 20px;
      padding: 0 0 20px;
      border-bottom: #e6e6e6 solid 1px; }
      .yoyaku_form .form table tr:last-child {
        margin: 0;
        padding: 0;
        border: none; }
      @media only screen and (max-width: 767px) {
        .yoyaku_form .form table tr {
          flex-direction: column; } }
      @media only screen and (max-width: 767px) {
        .yoyaku_form .form table tr th {
          width: 100%;
          text-align: left;
          margin: 0 0 10px;
          font-size: 1.05rem; } }
      @media only screen and (min-width: 768px) {
        .yoyaku_form .form table tr th {
          width: 25%;
          text-align: right; } }
      @media only screen and (max-width: 767px) {
        .yoyaku_form .form table tr td {
          width: 100%; } }
      @media only screen and (min-width: 768px) {
        .yoyaku_form .form table tr td {
          width: 75%;
          margin-left: 30px; } }
  .yoyaku_form span {
    background: #b00101;
    color: #fff;
    height: 26px;
    border-radius: 13px;
    margin-left: 10px;
    padding: 5px 10px;
    box-sizing: border-box;
    font-weight: normal; }
    @media only screen and (max-width: 767px) {
      .yoyaku_form span {
        font-size: 0.5rem; } }
    @media only screen and (min-width: 768px) {
      .yoyaku_form span {
        font-size: 0.5rem; } }
  .yoyaku_form input[type=text], .yoyaku_form input[type=email] {
    -webkit-appearance: none;
    border: none;
    font-size: 0.95rem;
    padding: 11px 14px;
    border-radius: 5px;
    line-height: 1;
    background: #f5f5f5;
    box-sizing: border-box;
    width: 100%; }
    .yoyaku_form input[type=text]:focus, .yoyaku_form input[type=email]:focus {
      outline: 0; }
  .yoyaku_form .submit_container {
    margin: 35px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    text-align: center; }
    @media only screen and (min-width: 768px) {
      .yoyaku_form .submit_container {
        max-width: 500px; } }
    .yoyaku_form .submit_container input[type=submit] {
      -webkit-appearance: none;
      margin: auto;
      border: none;
      border-radius: 50px;
      cursor: pointer;
      color: #fff;
      box-sizing: border-box; }
      @media only screen and (max-width: 767px) {
        .yoyaku_form .submit_container input[type=submit] {
          width: 145px;
          height: 45px;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center;
          margin: 0 auto 10px;
          font-size: 0.85rem; } }
      @media only screen and (min-width: 768px) {
        .yoyaku_form .submit_container input[type=submit] {
          width: 220px;
          height: 48px;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 1.0rem; } }
    .yoyaku_form .submit_container .submit {
      background: #4e67a9; }
      .yoyaku_form .submit_container .submit:hover {
        -ms-filter: brightness(1.2);
        -webkit-filter: brightness(1.2);
        filter: brightness(1.2); }
    .yoyaku_form .submit_container .reset {
      background: #ccc; }
      .yoyaku_form .submit_container .reset:hover {
        opacity: 0.8; }

.complete {
  text-align: center; }
  .complete .back {
    margin: 35px auto 0; }
    .complete .back a {
      margin: auto;
      border: none;
      border-radius: 50px;
      cursor: pointer;
      background: #4e67a9;
      color: #fff;
      box-sizing: border-box;
      text-decoration: none; }
      @media only screen and (max-width: 767px) {
        .complete .back a {
          width: 145px;
          height: 45px;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center;
          margin: 0 auto 10px;
          font-size: 0.85rem; } }
      @media only screen and (min-width: 768px) {
        .complete .back a {
          width: 220px;
          height: 48px;
          text-align: center;
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 1.0rem; }
          .complete .back a:hover {
            -ms-filter: brightness(1.2);
            -webkit-filter: brightness(1.2);
            filter: brightness(1.2); } }

.global_head {
  margin: 0;
  padding: 0;
  position: relative;
  z-index: 10; }
