@charset "utf-8";
/* CSS Document */

    *, *::before, *::after {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    body {
      font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
      font-size: 16px;
      line-height: 1.3;
      color: #111;
    }

    a {
      background-color: transparent;
      text-decoration: none;
    }

    a:active, a:hover {
      outline: 0;
    }

    img {
      border: 0;
    }
    .text_blue {
      color: #0068B7;
      text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF,
                   1px -1px 0 #FFF, 0px 1px 0 #FFF, 0 -1px 0 #FFF,
                   -1px 0 0 #FFF, 1px 0 0 #FFF;
    }
    
    .bk_blue_lead {
      width: 100%;
      min-height: 100vh;
      background-color: #D4F3FF;
      padding: 54px 0;
    }

    .inner {
      width: 90%;
      max-width: 600px;
      margin: 0 auto;
    }

    h1 {
      font-size: 80px;
      text-align: center;
      margin-bottom: 40px;
    }

    h2.sub_tit {
      width: 80%;
      max-width: 530px;
      font-size: 34px;
      padding: 5px 0;
      background-color: #E74291;
      border-radius: 40px;
      color: #fff;
      margin: 36px auto;
      text-align: center;
    }

    .text_kikan {
      font-size: 50px;
      text-align: center;
      font-weight: 700;
      color: #E74291;
      margin: 0 auto;
    }

    .text_kikan_sub {
      font-size: 30px;
      font-weight: 900;
    }

    .kikan_arrow {
      color: #ED86B4;
      font-size: 60%;
    }

    label {
      margin-top: 30px;
      font-size: 24px;
      line-height: 1.6;
      display: block;
      font-weight: bold;
      font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }

    .select-box {
      position: relative;
      margin: 5px auto;
      width: 80%;
      z-index: 1;
    }

    select {
      width: 100%;
      font-size: 28px;
      padding: 10px 22px 10px 30px;
      background: none;
      border-radius: 15px;
      border: 2px solid #000;
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      cursor: pointer;
      font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }

    .select-box::before {
      content: '';
      height: 100%;
      width: 2px;
      background: #000;
      position: absolute;
      right: 60px;
      top: 0;
      z-index: -1;
    }

    .select-box::after {
      content: '';
      width: 0;
      height: 0;
      border-left: 15px solid transparent;
      border-right: 15px solid transparent;
      border-top: 15px solid black;
      position: absolute;
      right: 18px;
      top: 50%;
      transform: translateY(-45%);
      z-index: -1;
    }

    button {
      background: #0070C0;
      color: white;
      padding: 5px 30px;
      width: 100%;
      height: 70px;
      border-radius: 25px;
      font-size: 32px;
      font-weight: 500;
      border: none;
      margin: 80px auto 10px;
      cursor: pointer;
      transition: 0.3s all;
      font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }

    button:hover { opacity: 0.7; }
    button:disabled {
      background-color: #ccc;
      color: #eee;
      cursor: default;
    }
    button:disabled:hover { opacity: 1; }

    .note {
      padding-left: 1em;
      text-indent: -1em;
    }

    option:disabled {
      color: #DDDDDD !important;
    }

    @media screen and (max-width: 780px) {
      .bk_blue_lead {
      padding: 5vh 0;
    }
      h1 { font-size: 11vw; margin-bottom: .4em; }
      h2.sub_tit { font-size: 5vw; margin: 1em auto; }
      .text_kikan { font-size: 8vw; }
      .text_kikan_sub { font-size: 4vw; }
      label { font-size: 5vw; margin-top: 1em; }
      select { font-size: 5vw; padding: .6em 1em; }
      .select-box { width: 100%; }
      .select-box::before { right: 14%; }
      .select-box::after {
        border-left: .5em solid transparent;
        border-right: .5em solid transparent;
        border-top: .5em solid black;
        right: 5%;
      }
      button {
        padding: .2em 1em;
        height: 3em;
        border-radius: 1em;
        font-size: 5.5vw;
        margin: 2.2em auto .4em;
        font-weight: bold;
      }
      .note { font-size: 3.8vw; }
    }

