#wrapper {
  width: 100%;
  overflow-x: hidden; }
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    #wrapper .contents {
      overflow: hidden; } }
  #wrapper .contents .kv_area {
    width: 100%;
    background: url(/frp/img/kv_bg.gif) top right/cover no-repeat;
    height: 393px; }
    @media screen and (max-width: 768px) {
      #wrapper .contents .kv_area {
        height: auto;
        background-size: 900px; } }
    #wrapper .contents .kv_area > .inner {
      width: 100%;
      max-width: 1000px;
      margin: 0 auto;
      height: 100%;
      padding-top: 80px; }
      @media screen and (max-width: 768px) {
        #wrapper .contents .kv_area > .inner {
          padding: 40px 3.5%; } }
      #wrapper .contents .kv_area > .inner .grid {
        width: 100%;
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: auto auto;
        grid-template-columns: auto auto;
        -ms-grid-rows: auto auto;
        grid-template-rows: auto auto; }
        @media screen and (max-width: 768px) {
          #wrapper .contents .kv_area > .inner .grid {
            display: block; } }
        #wrapper .contents .kv_area > .inner .grid h1 {
          -ms-grid-column: 1;
          grid-column-start: 1;
          grid-column-end: 2;
          -ms-grid-column-span: 1;
          -ms-grid-row: 1;
          grid-row-start: 1;
          grid-row-end: 2;
          -ms-grid-row-span: 1;
          text-align: left;
          font-weight: bold;
          font-size: 50px;
          font-size: 5rem;
          line-height: 1;
          position: relative;
          letter-spacing: -2px; }
          @media screen and (max-width: 768px) {
            #wrapper .contents .kv_area > .inner .grid h1 {
              font-size: 25px;
              font-size: 2.5rem;
              margin-bottom: 40px; } }
          #wrapper .contents .kv_area > .inner .grid h1 span.jp {
            font-weight: bold;
            font-size: 20px;
            font-size: 2rem;
            display: block;
            margin-bottom: 5px;
            letter-spacing: -1px; }
            @media screen and (max-width: 768px) {
              #wrapper .contents .kv_area > .inner .grid h1 span.jp {
                font-size: 12px;
                font-size: 1.2rem;
                margin-bottom: 1px; } }
          #wrapper .contents .kv_area > .inner .grid h1 span.big {
            display: inline-block;
            font-weight: bold;
            font-size: 70px;
            font-size: 7rem; }
            @media screen and (max-width: 768px) {
              #wrapper .contents .kv_area > .inner .grid h1 span.big {
                font-size: 35px;
                font-size: 3.5rem; } }
          #wrapper .contents .kv_area > .inner .grid h1:before {
            content: "";
            position: absolute;
            left: 0;
            bottom: -20px;
            width: 60px;
            height: 7px;
            background: #000;
            display: block; }
            @media screen and (max-width: 768px) {
              #wrapper .contents .kv_area > .inner .grid h1:before {
                width: 45px;
                height: 4px;
                bottom: -15px; } }
        #wrapper .contents .kv_area > .inner .grid p.txt {
          -ms-grid-column: 2;
          grid-column-start: 2;
          grid-column-end: 3;
          -ms-grid-column-span: 1;
          -ms-grid-row: 1;
          grid-row-start: 1;
          grid-row-end: 3;
          -ms-grid-row-span: 2;
          padding-left: 70px;
          text-align: left;
          line-height: 1.6;
          font-size: 18px;
          font-size: 1.8rem;
          padding-top: 30px; }
          @media screen and (max-width: 768px) {
            #wrapper .contents .kv_area > .inner .grid p.txt {
              padding: 0;
              font-size: 14px;
              font-size: 1.4rem; } }
        #wrapper .contents .kv_area > .inner .grid .pankuzu {
          -ms-grid-column: 1;
          grid-column-start: 1;
          grid-column-end: 2;
          -ms-grid-column-span: 1;
          -ms-grid-row: 2;
          grid-row-start: 2;
          grid-row-end: 3;
          -ms-grid-row-span: 1;
          margin-top: 70px; }
          @media screen and (max-width: 768px) {
            #wrapper .contents .kv_area > .inner .grid .pankuzu {
              margin-top: 20px; } }
          #wrapper .contents .kv_area > .inner .grid .pankuzu ul {
            width: 100%;
            font-size: 0; }
            #wrapper .contents .kv_area > .inner .grid .pankuzu ul li {
              display: inline-block;
              font-size: 14px;
              font-size: 1.4rem; }
              @media screen and (max-width: 768px) {
                #wrapper .contents .kv_area > .inner .grid .pankuzu ul li {
                  font-size: 12px;
                  font-size: 1.2rem; } }
              #wrapper .contents .kv_area > .inner .grid .pankuzu ul li a {
                font-size: 14px;
                font-size: 1.4rem;
                color: #e00b00; }
                @media screen and (max-width: 768px) {
                  #wrapper .contents .kv_area > .inner .grid .pankuzu ul li a {
                    font-size: 12px;
                    font-size: 1.2rem; } }
              #wrapper .contents .kv_area > .inner .grid .pankuzu ul li strong {
                font-weight: normal;
                font-size: 14px;
                font-size: 1.4rem; }
                @media screen and (max-width: 768px) {
                  #wrapper .contents .kv_area > .inner .grid .pankuzu ul li strong {
                    font-size: 12px;
                    font-size: 1.2rem; } }
      #wrapper .contents .kv_area > .inner .kv_anc {
        width: 100%;
        text-align: center;
        margin-top: 30px; }
        #wrapper .contents .kv_area > .inner .kv_anc ul {
          -js-display: flex;
          display: -webkit-box;
          display: -ms-flexbox;
          display: -webkit-flex;
          display: flex;
          -webkit-justify-content: center;
          justify-content: -webkit- center;
          justify-content: center; }
          @media screen and (max-width: 768px) {
            #wrapper .contents .kv_area > .inner .kv_anc ul {
              display: block; } }
          #wrapper .contents .kv_area > .inner .kv_anc ul li {
            width: 263px;
            text-align: center; }
            @media screen and (min-width: 768px) {
              #wrapper .contents .kv_area > .inner .kv_anc ul li:first-child {
                margin-right: 3px; } }
            @media screen and (max-width: 768px) {
              #wrapper .contents .kv_area > .inner .kv_anc ul li {
                width: 100%; }
                #wrapper .contents .kv_area > .inner .kv_anc ul li:first-child {
                  margin-bottom: 15px; } }
            #wrapper .contents .kv_area > .inner .kv_anc ul li a {
              display: inline-block;
              width: 100%;
              padding: 17px 0 30px;
              background: #18a592;
              text-decoration: none !important;
              -moz-transition: all 0.3s;
              -webkit-transition: all 0.3s;
              -o-transition: all 0.3s;
              -ms-transition: all 0.3s;
              transition: all 0.3s; }
              @media screen and (max-width: 768px) {
                #wrapper .contents .kv_area > .inner .kv_anc ul li a {
                  padding: 10px 0 25px; } }
              #wrapper .contents .kv_area > .inner .kv_anc ul li a:hover {
                background: #1ed2b9; }
              #wrapper .contents .kv_area > .inner .kv_anc ul li a span {
                line-height: 1;
                position: relative;
                color: #fff;
                font-size: 16px;
                font-size: 1.6rem;
                font-weight: bold; }
                @media screen and (max-width: 768px) {
                  #wrapper .contents .kv_area > .inner .kv_anc ul li a span {
                    font-size: 14px;
                    font-size: 1.4rem; } }
                #wrapper .contents .kv_area > .inner .kv_anc ul li a span:after {
                  content: "";
                  display: block;
                  width: 13px;
                  height: 6px;
                  background: url(/frp/img/arrow_bottom_wh.png) top center no-repeat;
                  position: absolute;
                  left: 50%;
                  bottom: -16px;
                  -moz-transform: translate(-50%, 0);
                  -webkit-transform: translate(-50%, 0);
                  -o-transform: translate(-50%, 0);
                  -ms-transform: translate(-50%, 0);
                  transform: translate(-50%, 0); }
                  @media screen and (max-width: 768px) {
                    #wrapper .contents .kv_area > .inner .kv_anc ul li a span:after {
                      bottom: -13px; } }
  #wrapper .contents .chara_area {
    width: 100%;
    background: url(/frp/img/bg1.gif) 0 0 no-repeat #121616;
    padding: 90px 0; }
    @media screen and (max-width: 768px) {
      #wrapper .contents .chara_area {
        padding: 40px 3.5%;
        background-size: 200px; } }
    #wrapper .contents .chara_area > .inner {
      width: 100%;
      max-width: 1000px;
      margin: 0 auto;
      text-align: left; }
      #wrapper .contents .chara_area > .inner h2 {
        font-size: 30px;
        font-size: 3rem;
        font-weight: 500;
        color: #fff;
        display: inline-block;
        letter-spacing: 2px;
        padding-bottom: 5px;
        border-bottom: 4px solid  #fff; }
        @media screen and (max-width: 768px) {
          #wrapper .contents .chara_area > .inner h2 {
            font-size: 20px;
            font-size: 2rem;
            margin-bottom: 30px; } }
      #wrapper .contents .chara_area > .inner .point {
        width: 100%;
        padding-left: 205px; }
        @media screen and (max-width: 768px) {
          #wrapper .contents .chara_area > .inner .point {
            padding: 0; } }
        #wrapper .contents .chara_area > .inner .point dl {
          width: 100%;
          -js-display: flex;
          display: -webkit-box;
          display: -ms-flexbox;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: flex-start;
          align-items: -webkit- flex-start;
          align-items: flex-start;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap; }
          #wrapper .contents .chara_area > .inner .point dl dt {
            width: 100px;
            line-height: 1;
            font-size: 12px;
            font-size: 1.2rem;
            color: #fff;
            border: 1px solid  #fff;
            padding: 8px 0;
            text-align: center;
            border-radius: 15px;
            margin-bottom: 50px; }
            @media screen and (max-width: 768px) {
              #wrapper .contents .chara_area > .inner .point dl dt {
                font-size: 11px;
                font-size: 1.1rem;
                width: 75px;
                margin-bottom: 30px; } }
            #wrapper .contents .chara_area > .inner .point dl dt:last-of-type {
              margin-bottom: 0; }
          #wrapper .contents .chara_area > .inner .point dl dd {
            width: calc(100% - 100px);
            padding-left: 20px;
            color: #fff;
            margin-bottom: 50px;
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 1.8;
            letter-spacing: -0.3px; }
            @media screen and (max-width: 768px) {
              #wrapper .contents .chara_area > .inner .point dl dd {
                width: calc(100% - 75px);
                padding-left: 15px;
                font-size: 13px;
                font-size: 1.3rem;
                line-height: 1.6;
                margin-bottom: 30px; } }
            #wrapper .contents .chara_area > .inner .point dl dd:last-of-type {
              margin-bottom: 0; }
        #wrapper .contents .chara_area > .inner .point table {
          width: 650px;
          border-collapse: collapse;
          margin-top: 60px; }
          @media screen and (max-width: 768px) {
            #wrapper .contents .chara_area > .inner .point table {
              width: 100%; } }
          #wrapper .contents .chara_area > .inner .point table tr th {
            background: #00a693;
            padding: 15px 0;
            text-align: center;
            font-size: 18px;
            font-size: 1.8rem;
            font-weight: bold;
            border-right: 1px solid  #4dc1b4;
            color: #fff;
            vertical-align: middle; }
            @media screen and (max-width: 768px) {
              #wrapper .contents .chara_area > .inner .point table tr th {
                font-size: 14px;
                font-size: 1.4rem; } }
            #wrapper .contents .chara_area > .inner .point table tr th:first-child {
              width: 200px;
              border-left: 1px solid  #00a693; }
            #wrapper .contents .chara_area > .inner .point table tr th:nth-child(2) {
              width: 150px; }
            #wrapper .contents .chara_area > .inner .point table tr th:nth-child(3) {
              width: 150px; }
            #wrapper .contents .chara_area > .inner .point table tr th:nth-child(4) {
              width: 150px;
              border-right: 1px solid #00a693; }
          #wrapper .contents .chara_area > .inner .point table tr td {
            text-align: center;
            font-size: 16px;
            font-size: 1.6rem;
            padding: 15px 0;
            border: 1px solid  #747373;
            color: #fff;
            vertical-align: middle; }
            @media screen and (max-width: 768px) {
              #wrapper .contents .chara_area > .inner .point table tr td {
                font-size: 13px;
                font-size: 1.3rem; } }
          #wrapper .contents .chara_area > .inner .point table tr td.frp {
            background: #383736;
            border: 1px solid  #747373;
            text-align: center;
            padding: 15px 0;
            font-size: 24px;
            font-size: 2.4rem;
            color: #fff;
            font-weight: bold; }
            @media screen and (max-width: 768px) {
              #wrapper .contents .chara_area > .inner .point table tr td.frp {
                font-size: 16px;
                font-size: 1.6rem; } }
  #wrapper .contents .exam_area {
    width: 100%;
    background: url(/frp/img/exam_bg.gif) right bottom no-repeat;
    padding: 90px 0 150px; }
    @media screen and (max-width: 768px) {
      #wrapper .contents .exam_area {
        padding: 45px 3.5% 70px; } }
    #wrapper .contents .exam_area > .inner {
      width: 100%;
      max-width: 1000px;
      margin: 0 auto;
      text-align: left; }
      #wrapper .contents .exam_area > .inner h2 {
        display: inline-block;
        font-weight: 500;
        font-size: 30px;
        font-size: 3rem;
        line-height: 1;
        border-bottom: 4px solid  #0d1010;
        padding-bottom: 14px; }
        @media screen and (max-width: 768px) {
          #wrapper .contents .exam_area > .inner h2 {
            font-size: 20px;
            font-size: 2rem;
            margin-bottom: 25px; } }
        #wrapper .contents .exam_area > .inner h2 span {
          display: block;
          font-size: 20px;
          font-size: 2rem;
          font-weight: 500;
          margin-bottom: 10px; }
          @media screen and (max-width: 768px) {
            #wrapper .contents .exam_area > .inner h2 span {
              font-size: 14px;
              font-size: 1.4rem; } }
      #wrapper .contents .exam_area > .inner p.txt {
        width: 100%;
        padding-left: 260px;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.8; }
        @media screen and (max-width: 768px) {
          #wrapper .contents .exam_area > .inner p.txt {
            padding: 0;
            font-size: 14px;
            font-size: 1.4rem; } }
      #wrapper .contents .exam_area > .inner ul {
        width: 100%;
        -js-display: flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: -webkit- space-between;
        justify-content: space-between;
        margin-top: 50px; }
        @media screen and (max-width: 768px) {
          #wrapper .contents .exam_area > .inner ul {
            margin-top: 30px; } }
        #wrapper .contents .exam_area > .inner ul li {
          max-width: 326px;
          width: 32.6%; }
          @media screen and (min-width: 768px) {
            #wrapper .contents .exam_area > .inner ul li:nth-child(n+4) {
              margin-top: 60px; } }
          @media screen and (max-width: 768px) {
            #wrapper .contents .exam_area > .inner ul li {
              width: 48%; }
              #wrapper .contents .exam_area > .inner ul li:nth-child(n+3) {
                margin-top: 40px; } }
          #wrapper .contents .exam_area > .inner ul li .img img {
            width: 100%; }
          #wrapper .contents .exam_area > .inner ul li p {
            text-align: left;
            line-height: 1.6;
            font-size: 14px;
            font-size: 1.4rem;
            margin-top: 5px; }
            @media screen and (max-width: 768px) {
              #wrapper .contents .exam_area > .inner ul li p {
                font-size: 13px;
                font-size: 1.3rem; } }
            #wrapper .contents .exam_area > .inner ul li p span {
              font-size: 12px;
              font-size: 1.2rem; }
              @media screen and (max-width: 768px) {
                #wrapper .contents .exam_area > .inner ul li p span {
                  font-size: 11px;
                  font-size: 1.1rem; } }

/*# sourceMappingURL=layout.css.map */
