@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  margin: 0;
  padding: 0; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden; }

.clearfix {
  display: inline-block; }

/* Hides from IE Mac */
* html .clearfix {
  height: 1%; }

.clearfix {
  display: block; }

/* ---------- 初期 ---------- */
body {
  letter-spacing: 0;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  line-height: 0; }

a {
  text-decoration: none; }

strong {
  font-weight: bold; }

/* ---------- /共通部分 ---------- */
#jougetyuou {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  margin: auto; }

#kadomaru {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px; }

#resbtn {
  -webkit-appearance: none; }

.ancr {
  position: relative;
  transition: 0.5s; }

.anca {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 10;
  cursor: pointer; }

.ancr:hover {
  opacity: 0.75;
  transition: 0.5s;
  cursor: pointer; }

/* ---------- /参考タグ部分 ---------- */
.font_inter {
  font-family: "Inter", sans-serif; }

.font_bebas {
  font-family: "Bebas Neue", sans-serif;
  font-weight: 400; }

html {
  font-size: calc(1vw * 100 / 1920); }

/* PC */
@media screen and (min-width: 769px) {
  .sponly {
    display: none !important; }

  main {
    background: #00317C; }

  #mv .mv_img {
    width: 100%;
    line-height: 0; }

  #head {
    padding: 115rem 0 0;
    color: #fff; }
    #head .head_img {
      width: 1200rem;
      margin: 0 auto 80rem;
      line-height: 0; }

  #experience .inner {
    width: 1600rem;
    margin: 0 auto; }
    #experience .inner .subttl {
      width: 226rem;
      margin: 0 auto 8rem;
      font-size: 24rem;
      line-height: 36rem;
      font-weight: 900;
      color: #fff;
      text-align: center;
      background: #DD0421;
      position: relative;
      bottom: -20rem; }
    #experience .inner .sec_ttl {
      width: 1200rem;
      margin: 0 auto;
      text-align: center;
      padding-bottom: 25rem;
      background: url("../img/sec_ttl_line.png") no-repeat left bottom;
      background-size: 100% 5rem; }
      #experience .inner .sec_ttl h2 {
        display: inline-block;
        font-size: 80rem;
        line-height: 1.2em;
        font-weight: 900;
        color: #fff;
        transform: skewX(-5deg); }
        #experience .inner .sec_ttl h2 .small {
          font-size: 48rem;
          line-height: 1.2em; }
    #experience .inner .experience_cont.cont01 {
      margin-top: 80rem; }
    #experience .inner .experience_cont .experience_cont_ttl {
      color: #fff;
      display: flex;
      justify-content: center;
      align-items: center;
      border-radius: 20rem 20rem 0 0;
      background: #DA5278; }
      #experience .inner .experience_cont .experience_cont_ttl .prize {
        font-size: 48rem;
        line-height: 1.5em;
        font-weight: 900;
        margin-right: 24rem; }
        #experience .inner .experience_cont .experience_cont_ttl .prize span {
          display: inline-block;
          font-size: 72rem;
          line-height: 100rem; }
      #experience .inner .experience_cont .experience_cont_ttl h3 {
        font-size: 40rem;
        line-height: 1.5em;
        font-weight: 900; }
        #experience .inner .experience_cont .experience_cont_ttl h3 span {
          display: inline-block;
          line-height: 1.5em;
          font-size: 48rem; }
    #experience .inner .experience_cont .experience_boxes {
      display: flex;
      justify-content: center;
      padding: 40rem 0;
      border-radius: 0 0 20rem 20rem;
      background: #fff; }
      #experience .inner .experience_cont .experience_boxes .experience_box {
        width: 501rem;
        text-align: center;
        margin: 0 12rem; }
        #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_ttl {
          font-size: 24rem;
          line-height: 1.5em;
          font-weight: 900; }
          #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_ttl span {
            display: inline-block;
            font-size: 32rem;
            line-height: 1.5em; }
        #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_img {
          width: 100%;
          margin: 16rem 0; }
        #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win {
          display: flex;
          justify-content: space-between;
          margin-bottom: 16rem; }
          #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl dt {
            font-size: 16rem;
            line-height: 1;
            font-weight: 900;
            color: #FFF800;
            padding: 6rem 0;
            background: #003E92;
            margin-bottom: 8rem; }
          #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl dd {
            font-size: 24rem;
            line-height: 1.5em;
            font-weight: 900; }
            #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl dd .num {
              display: inline-block;
              font-size: 32rem;
              line-height: 1.2em; }
          #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl.short {
            width: 169rem; }
            #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl.short dd {
              line-height: 1.2em; }
          #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl.long {
            width: 323rem; }
        #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_btn {
          width: 257rem;
          margin: 0 auto; }
          #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_btn a {
            display: block;
            width: 100%;
            font-size: 24rem;
            line-height: 1;
            font-weight: 900;
            color: #fff;
            text-align: left;
            box-sizing: border-box;
            padding: 14rem 0 14rem 40rem;
            border: solid 2rem #FF0038;
            background: url("../img/arrow_white.png") no-repeat right 38rem center #FF0038;
            background-size: 11rem;
            transition: 0.3s; }
            #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_btn a:hover {
              color: #FF0038;
              background: url("../img/arrow_red.png") no-repeat right 38rem center #fff;
              background-size: 11rem; }
        #experience .inner .experience_cont .experience_boxes .experience_box .causion {
          font-size: 12rem;
          line-height: 1.5em;
          margin-top: 16rem; }
    #experience .inner .experience_cont.cont02 {
      margin-top: 80rem; }
      #experience .inner .experience_cont.cont02 .experience_boxes {
        padding-bottom: 137rem;
        flex-wrap: wrap; }
        #experience .inner .experience_cont.cont02 .experience_boxes .experience_box:nth-child(n+4) {
          margin-top: 40rem; }
        #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win {
          display: flex;
          justify-content: space-between;
          align-items: center;
          margin-bottom: 16rem; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl {
            width: 335rem; }
            #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl dt {
              font-size: 27rem;
              line-height: 1;
              font-weight: 900;
              color: #FFF800;
              padding: 5rem 0;
              background: #003E92;
              margin-bottom: 0; }
            #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl dd {
              font-size: 30rem;
              line-height: 1.2em;
              font-weight: 900; }
              #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl dd .num {
                display: inline-block;
                font-size: 64rem;
                line-height: 1.2em; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item {
            width: 142rem;
            height: 146rem;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column; }
            #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item.item01 img {
              width: 135rem; }
            #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item.item02 img {
              width: 136rem; }
            #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item.item03 img {
              width: 99rem; }
            #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item.item04 img {
              width: 142rem; }
            #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item.item05 img {
              width: 126rem; }
        #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .causion {
          width: 382rem;
          margin: 16rem auto 0;
          text-align: left; }

  #apply .inner {
    width: 1200rem;
    margin: 80rem auto; }
    #apply .inner .sec_ttl {
      width: 1200rem;
      margin: 0 auto 24rem;
      text-align: center;
      padding-bottom: 25rem;
      background: url("../img/sec_ttl_line.png") no-repeat left bottom;
      background-size: 100% 5rem; }
      #apply .inner .sec_ttl h2 {
        display: inline-block;
        font-size: 48rem;
        line-height: 1.2em;
        font-weight: 900;
        color: #fff;
        transform: skewX(-5deg); }
    #apply .inner .apply_txt {
      font-size: 24rem;
      line-height: 1.8em;
      font-weight: 900;
      color: #fff;
      text-align: center;
      margin-bottom: 24rem; }
      #apply .inner .apply_txt span {
        display: inline-block;
        font-size: 48rem;
        letter-spacing: 0.01em;
        line-height: 1.8em;
        color: #FFF800; }
    #apply .inner ul {
      width: 572rem;
      margin: 0 auto 40rem; }
      #apply .inner ul li {
        font-size: 15rem;
        line-height: 1.5em;
        font-weight: bold;
        color: #fff; }
        #apply .inner ul li:nth-child(n+2) {
          margin-top: 8rem; }
    #apply .inner .apply_btn {
      width: 546rem;
      margin: 0 auto; }
      #apply .inner .apply_btn a {
        display: block;
        width: 100%;
        font-size: 36rem;
        line-height: 1.5em;
        font-weight: 900;
        color: #fff;
        box-sizing: border-box;
        padding: 38rem 0 38rem 38rem;
        border: solid 2rem #FF0038;
        background: url("../img/btn_arrow.png") no-repeat right 38rem center #FF0038;
        background-size: 40rem;
        box-shadow: 10rem 14rem 4rem #802424;
        transition: 0.3s; }
        #apply .inner .apply_btn a:hover {
          color: #FF0038;
          background: url("../img/btn_arrow_02.png") no-repeat right 38rem center #fff;
          background-size: 40rem; }

  #notes .inner {
    width: 1200rem;
    margin: 0 auto;
    padding-bottom: 80rem; }
    #notes .inner .sec_ttl {
      width: 1200rem;
      margin: 0 auto 24rem;
      text-align: center;
      padding-bottom: 25rem;
      background: url("../img/sec_ttl_line.png") no-repeat left bottom;
      background-size: 100% 5rem; }
      #notes .inner .sec_ttl h2 {
        display: inline-block;
        font-size: 48rem;
        line-height: 1.2em;
        font-weight: 900;
        color: #fff;
        transform: skewX(-5deg); }
    #notes .inner .notes_txt {
      font-size: 15rem;
      line-height: 1.5em;
      font-weight: bold;
      color: #fff;
      text-align: center;
      margin-bottom: 24rem; }
    #notes .inner .notes_box {
      height: 425rem;
      box-sizing: border-box;
      padding: 5rem 0;
      background: #fff; }
      #notes .inner .notes_box .scroll {
        height: 100%;
        overflow-y: scroll;
        box-sizing: border-box;
        padding: 0 147rem 0 70rem;
        /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
        -ms-overflow-style: none;
        /*Firefoxへの対応*/
        scrollbar-width: none;
        /*Google Chrome、Safariへの対応*/ }
        #notes .inner .notes_box .scroll-webkit-scrollbar {
          display: none; }
        #notes .inner .notes_box .scroll .simplebar-scrollbar {
          background-color: #000 !important;
          border-radius: 10rem; }
          #notes .inner .notes_box .scroll .simplebar-scrollbar::before {
            background: #000; }
        #notes .inner .notes_box .scroll .simplebar-track {
          background-color: #ECECEC;
          border-radius: 10rem;
          right: 10rem; }
      #notes .inner .notes_box .notes_box_txt {
        font-size: 14rem;
        letter-spacing: 0.04em;
        line-height: 1.8em;
        font-weight: 500;
        color: #999999; }
        #notes .inner .notes_box .notes_box_txt a {
          color: #999999;
          text-decoration: underline; }
        #notes .inner .notes_box .notes_box_txt dl dd {
          box-sizing: border-box;
          padding-left: 2em;
          text-indent: -1em; }

  footer {
    color: #fff;
    text-align: center;
    background: #000; }
    footer .footer_contact {
      padding: 64rem 0;
      border-bottom: solid 1rem #ECECEC; }
      footer .footer_contact .sec_ttl {
        margin-bottom: 40rem; }
        footer .footer_contact .sec_ttl .ttl {
          display: inline-block;
          font-size: 48rem;
          line-height: 1.2em;
          font-weight: 900;
          transform: skewX(-5deg); }
      footer .footer_contact .footer_contact_txt {
        font-size: 24rem;
        line-height: 1.2em;
        font-weight: 900;
        margin-bottom: 40rem; }
      footer .footer_contact .footer_contact_address {
        margin-bottom: 40rem; }
        footer .footer_contact .footer_contact_address a {
          display: inline-block;
          font-size: 24rem;
          line-height: 1.2em;
          font-weight: 900;
          color: #fff; }
        footer .footer_contact .footer_contact_address .address_txt {
          font-size: 18rem;
          line-height: 1.22em;
          font-weight: 900; }
      footer .footer_contact ul {
        display: flex;
        justify-content: center; }
        footer .footer_contact ul li {
          width: 40rem;
          margin: 0 8rem; }
          footer .footer_contact ul li a {
            display: block;
            width: 100%; }
    footer .copyright {
      padding: 24rem 0;
      font-size: 14rem; }

  #contact {
    padding: 150rem 0 120rem; }

  .contact {
    margin-top: 120rem; }
    .contact .inner {
      width: 1200rem;
      margin: 0 auto; }
      .contact .inner .sec_ttl {
        margin: 0 auto;
        text-align: center;
        padding-bottom: 25rem;
        background: url("../img/sec_ttl_line.png") no-repeat left bottom;
        background-size: 100% 5rem; }
        .contact .inner .sec_ttl h2 {
          display: inline-block;
          font-size: 48rem;
          line-height: 1.2em;
          font-weight: 900;
          color: #fff;
          transform: skewX(-5deg); }
      .contact .inner .contact_txt {
        font-size: 15rem;
        line-height: 1.5em;
        font-weight: bold;
        color: #fff;
        text-align: center;
        margin-top: 23rem; }
      .contact .inner .contact_bg {
        width: 100%;
        padding: 75rem 0 105rem;
        background: #fff;
        margin-top: 40rem; }
        .contact .inner .contact_bg .form {
          width: 733rem;
          margin: 0 auto; }
          .contact .inner .contact_bg .form table {
            width: 100%;
            margin-bottom: 40rem; }
            .contact .inner .contact_bg .form table tr th {
              display: block;
              width: 100%;
              font-size: 18rem;
              letter-spacing: 0.04em;
              line-height: 1.8em;
              font-weight: bold;
              color: #333333;
              text-align: left; }
              .contact .inner .contact_bg .form table tr th div {
                display: inline-block;
                padding-right: 61rem;
                position: relative; }
                .contact .inner .contact_bg .form table tr th div::before {
                  position: absolute;
                  content: "任意";
                  width: 45rem;
                  height: 26rem;
                  right: 0;
                  top: 50%;
                  transform: translateY(-50%);
                  border-radius: 5rem;
                  background: #000;
                  font-size: 12rem;
                  letter-spacing: 0.04em;
                  line-height: 26rem;
                  font-weight: 500;
                  color: #fff;
                  text-align: center; }
                .contact .inner .contact_bg .form table tr th div.hissu::before {
                  background: #FF0038;
                  content: "必須"; }
            .contact .inner .contact_bg .form table tr td {
              display: block;
              width: 100%;
              color: #333333;
              padding: 8rem 0 40rem; }
              .contact .inner .contact_bg .form table tr td select {
                width: 100%;
                height: 47rem;
                font-size: 18rem;
                font-weight: 500;
                color: #333333;
                box-sizing: border-box;
                padding: 12rem 3em 12rem 16rem;
                border-radius: 5rem;
                border: solid 1rem #DDDDDD;
                background-image: url("../img/contact_select_btn.png"), linear-gradient(to bottom, #F9F9F9, #DCDCDC);
                background-repeat: no-repeat;
                background-position: right center, center;
                background-size: 43rem 47rem, cover;
                -webkit-appearance: none;
                appearance: none;
                /* デフォルトの矢印を*/
                font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
              .contact .inner .contact_bg .form table tr td input {
                width: 100%;
                height: 47rem;
                font-size: 18rem;
                font-weight: 500;
                box-sizing: border-box;
                padding: 10rem 16rem;
                border-radius: 5rem;
                border: solid 1rem #DDDDDD;
                font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
                .contact .inner .contact_bg .form table tr td input::placeholder {
                  color: #999999; }
              .contact .inner .contact_bg .form table tr td .doui {
                display: inline-block;
                font-size: 18rem;
                line-height: 20rem; }
                .contact .inner .contact_bg .form table tr td .doui input {
                  width: 20rem;
                  height: 20rem;
                  margin-right: 12rem;
                  vertical-align: -0.2em; }
              .contact .inner .contact_bg .form table tr td .address .address_box {
                display: flex;
                justify-content: flex-start;
                align-items: center; }
                .contact .inner .contact_bg .form table tr td .address .address_box:nth-child(n+2) {
                  margin-top: 8rem; }
                .contact .inner .contact_bg .form table tr td .address .address_box .address_box_item {
                  width: 192rem;
                  font-size: 18rem;
                  letter-spacing: 0.04em;
                  line-height: 1.8em;
                  font-weight: bold; }
                .contact .inner .contact_bg .form table tr td .address .address_box .address_box_input input {
                  width: 221rem;
                  height: 52rem; }
                  .contact .inner .contact_bg .form table tr td .address .address_box .address_box_input input.long {
                    width: 303rem; }
                .contact .inner .contact_bg .form table tr td .address .address_box .address_box_btn {
                  margin-left: 24rem; }
                  .contact .inner .contact_bg .form table tr td .address .address_box .address_box_btn button {
                    width: 108rem;
                    height: 45rem;
                    font-size: 14rem;
                    line-height: 45rem;
                    font-weight: bold;
                    color: #625C60;
                    border-radius: 100rem;
                    border: solid 1rem #625C60;
                    background: #fff;
                    cursor: pointer; }
              .contact .inner .contact_bg .form table tr td .buy input {
                height: 52rem;
                padding: 0;
                border: none; }
              .contact .inner .contact_bg .form table tr td textarea {
                width: 100%;
                height: 214rem;
                font-size: 18rem;
                font-weight: 500;
                box-sizing: border-box;
                padding: 10rem 16rem;
                border-radius: 5rem;
                border: solid 1rem #DDDDDD;
                font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
                .contact .inner .contact_bg .form table tr td textarea::placeholder {
                  color: #999999; }
              .contact .inner .contact_bg .form table tr td .txt {
                font-size: 12rem;
                line-height: 2em;
                font-weight: 500;
                color: #625C60;
                margin-top: 8rem; }
              .contact .inner .contact_bg .form table tr td .causion {
                font-size: 12rem;
                line-height: 1.8em;
                font-weight: 500;
                color: #AFAFAF;
                margin-top: 8rem; }
                .contact .inner .contact_bg .form table tr td .causion .indent {
                  display: inline-block;
                  box-sizing: border-box;
                  padding-left: 1em;
                  text-indent: -1em; }
            .contact .inner .contact_bg .form table tr:last-child td {
              padding-bottom: 0 !important; }
          .contact .inner .contact_bg .form .terms {
            margin-bottom: 80rem; }
            .contact .inner .contact_bg .form .terms .terms_ttl {
              font-size: 18rem;
              letter-spacing: 0.04em;
              line-height: 1.8em;
              font-weight: bold;
              color: #333333;
              margin-bottom: 8rem; }
            .contact .inner .contact_bg .form .terms .terms_box {
              height: 472rem;
              margin-bottom: 8rem;
              box-sizing: border-box;
              border-radius: 5rem;
              border: solid 1rem #DDDDDD; }
              .contact .inner .contact_bg .form .terms .terms_box .scroll {
                height: 100%;
                overflow-y: scroll;
                box-sizing: border-box;
                padding: 23rem 40rem 23rem 15rem;
                /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
                -ms-overflow-style: none;
                /*Firefoxへの対応*/
                scrollbar-width: none;
                /*Google Chrome、Safariへの対応*/ }
                .contact .inner .contact_bg .form .terms .terms_box .scroll-webkit-scrollbar {
                  display: none; }
                .contact .inner .contact_bg .form .terms .terms_box .scroll .simplebar-scrollbar {
                  background-color: #000 !important;
                  border-radius: 10rem; }
                  .contact .inner .contact_bg .form .terms .terms_box .scroll .simplebar-scrollbar::before {
                    background: #000; }
                .contact .inner .contact_bg .form .terms .terms_box .scroll .simplebar-track {
                  background-color: #ECECEC;
                  border-radius: 10rem;
                  right: 16rem; }
              .contact .inner .contact_bg .form .terms .terms_box .terms_box_txt {
                font-size: 14rem;
                letter-spacing: 0.04em;
                line-height: 1.8em;
                font-weight: 500;
                color: #999999; }
                .contact .inner .contact_bg .form .terms .terms_box .terms_box_txt a {
                  color: #999999;
                  text-decoration: underline; }
                .contact .inner .contact_bg .form .terms .terms_box .terms_box_txt dl dd {
                  box-sizing: border-box;
                  padding-left: 2em;
                  text-indent: -1em; }
            .contact .inner .contact_bg .form .terms .terms_check_txt {
              font-size: 16rem;
              line-height: 1.1875em;
              color: #999999;
              margin-bottom: 8rem; }
              .contact .inner .contact_bg .form .terms .terms_check_txt span {
                color: #0066A0; }
            .contact .inner .contact_bg .form .terms .check label {
              display: inline-block;
              font-size: 16rem;
              color: #333; }
              .contact .inner .contact_bg .form .terms .check label input {
                width: 20rem;
                height: 20rem;
                margin-right: 12rem;
                vertical-align: -0.2em; }
          .contact .inner .contact_bg .form .form_btn {
            display: flex;
            justify-content: center; }
            .contact .inner .contact_bg .form .form_btn .submit {
              width: 546rem;
              margin: 0 auto;
              font-size: 36rem;
              line-height: 1.5em;
              font-weight: 900;
              color: #fff;
              text-align: left;
              box-sizing: border-box;
              padding: 38rem 0 38rem 147rem;
              border: solid 2rem #FF0038;
              background: url("../img/btn_arrow.png") no-repeat right 147rem center #FF0038;
              background-size: 40rem;
              cursor: pointer;
              transition: 0.3s;
              font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
              .contact .inner .contact_bg .form .form_btn .submit:hover {
                color: #FF0038;
                background: url("../img/btn_arrow_02.png") no-repeat right 147rem center #fff;
                background-size: 40rem; }

  #confirm {
    padding: 167rem 0 113rem; }
    #confirm .contact .inner .contact_bg {
      width: 100%;
      padding: 75rem 0;
      background: #fff;
      margin-top: 54rem; }
      #confirm .contact .inner .contact_bg .form table {
        width: 100%;
        margin-bottom: 112rem; }
        #confirm .contact .inner .contact_bg .form table tr th {
          display: block;
          width: 100%;
          font-size: 18rem;
          letter-spacing: 0.04em;
          line-height: 1.8em;
          font-weight: bold;
          color: #333333;
          text-align: left; }
          #confirm .contact .inner .contact_bg .form table tr th div {
            display: inline-block;
            padding-right: 61rem;
            position: relative; }
            #confirm .contact .inner .contact_bg .form table tr th div::before {
              display: none !important; }
        #confirm .contact .inner .contact_bg .form table tr td {
          display: block;
          width: 100%;
          font-size: 18rem;
          line-height: 1.8em;
          font-weight: 500;
          color: #000;
          padding: 8rem 0 40rem; }
          #confirm .contact .inner .contact_bg .form table tr td .address .address_box {
            display: flex;
            justify-content: flex-start;
            align-items: center; }
            #confirm .contact .inner .contact_bg .form table tr td .address .address_box:nth-child(n+2) {
              margin-top: 8rem; }
            #confirm .contact .inner .contact_bg .form table tr td .address .address_box .address_box_item {
              width: 192rem;
              font-size: 18rem;
              letter-spacing: 0.04em;
              line-height: 1.8em;
              font-weight: bold; }
            #confirm .contact .inner .contact_bg .form table tr td .address .address_box .address_box_input {
              flex: 1;
              font-size: 18rem;
              letter-spacing: 0.04em;
              line-height: 1.8em;
              font-weight: bold; }
          #confirm .contact .inner .contact_bg .form table tr td .txt {
            font-size: 12rem;
            line-height: 2em;
            font-weight: 500;
            color: #625C60;
            margin-top: 8rem; }
          #confirm .contact .inner .contact_bg .form table tr td .causion {
            font-size: 12rem;
            line-height: 1.8em;
            font-weight: 500;
            color: #AFAFAF;
            margin-top: 8rem; }
            #confirm .contact .inner .contact_bg .form table tr td .causion .indent {
              display: inline-block;
              box-sizing: border-box;
              padding-left: 1em;
              text-indent: -1em; }
      #confirm .contact .inner .contact_bg .form .form_btn {
        display: flex;
        justify-content: center; }
        #confirm .contact .inner .contact_bg .form .form_btn .submit {
          padding: 38rem 0 38rem 72rem;
          background: url("../img/btn_arrow.png") no-repeat right 72rem center #FF0038;
          background-size: 40rem; }
          #confirm .contact .inner .contact_bg .form .form_btn .submit:hover {
            color: #FF0038;
            background: url("../img/btn_arrow_02.png") no-repeat right 72rem center #fff;
            background-size: 40rem; }

  #thanks {
    padding: 167rem 0 151rem; }
    #thanks .contact .inner .contact_bg {
      width: 100%;
      padding: 80rem 0;
      background: #fff;
      margin-top: 54rem; }
      #thanks .contact .inner .contact_bg .thanks_ttl {
        font-size: 32rem;
        letter-spacing: 0.04em;
        line-height: 1.8em;
        font-weight: bold;
        color: #333333;
        text-align: center;
        margin-bottom: 10rem; }
      #thanks .contact .inner .contact_bg .thanks_txt {
        width: 955rem;
        margin: 0 auto 40rem;
        font-size: 18rem;
        letter-spacing: 0.04em;
        line-height: 1.8em;
        font-weight: bold;
        color: #333333; }
      #thanks .contact .inner .contact_bg .causion {
        width: 610rem;
        margin: 0 auto 40rem;
        font-size: 14rem;
        letter-spacing: 0.04em;
        line-height: 1.8em;
        font-weight: bold; }
      #thanks .contact .inner .contact_bg .thanks_btn {
        width: 546rem;
        margin: 0 auto; }
        #thanks .contact .inner .contact_bg .thanks_btn a {
          display: block;
          width: 100%;
          font-size: 36rem;
          line-height: 1.5em;
          font-weight: 900;
          color: #fff;
          box-sizing: border-box;
          padding: 38rem 0 38rem 144rem;
          border: solid 2rem #000;
          background: url("../img/btn_arrow_black.png") no-repeat right 144rem center #000;
          background-size: 40rem;
          transition: 0.3s; }
          #thanks .contact .inner .contact_bg .thanks_btn a:hover {
            color: #000;
            background: url("../img/btn_arrow_black_02.png") no-repeat right 144rem center #fff;
            background-size: 40rem; } }
/* SP */
@media screen and (max-width: 768px) {
  .pconly {
    display: none !important; }

  html {
    font-size: calc(1vw * 100 / 393); }

  main {
    background: #00317C; }

  #mv .mv_img {
    width: 100%;
    line-height: 0; }

  #head {
    padding: 40rem 0 0;
    color: #fff; }
    #head .head_img {
      width: 361rem;
      margin: 0 auto 68rem;
      line-height: 0; }

  #experience .inner {
    width: 330rem;
    margin: 0 auto; }
    #experience .inner .subttl {
      width: 108rem;
      margin: 0 auto 4rem;
      font-size: 14rem;
      line-height: 25rem;
      font-weight: 900;
      color: #fff;
      text-align: center;
      background: #DD0421; }
    #experience .inner .sec_ttl {
      margin: 0 auto;
      text-align: center;
      padding-bottom: 14rem;
      background: url("../img/sec_ttl_line_sp_02.png") no-repeat center bottom;
      background-size: 307rem 2rem; }
      #experience .inner .sec_ttl h2 {
        display: inline-block;
        font-size: 40rem;
        line-height: 1.2em;
        font-weight: 900;
        color: #fff;
        transform: skewX(-5deg); }
        #experience .inner .sec_ttl h2 .small {
          font-size: 22rem;
          line-height: 1.2em; }
    #experience .inner .experience_cont.cont01 {
      margin-top: 60rem; }
    #experience .inner .experience_cont .experience_boxes .experience_box {
      width: 100%;
      text-align: center;
      border-radius: 20rem;
      background: #fff;
      overflow: hidden;
      padding-bottom: 24rem; }
      #experience .inner .experience_cont .experience_boxes .experience_box:nth-child(n+2) {
        margin-top: 24rem; }
      #experience .inner .experience_cont .experience_boxes .experience_box .prize {
        font-size: 24rem;
        line-height: 1.5em;
        font-weight: 900;
        color: #fff;
        background: #DA5278; }
        #experience .inner .experience_cont .experience_boxes .experience_box .prize span {
          display: inline-block;
          font-size: 40rem;
          line-height: 1.5em; }
      #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_ttl {
        font-size: 20rem;
        line-height: 1.5em;
        font-weight: 900;
        padding-top: 24rem; }
      #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_img {
        width: 286rem;
        margin: 16rem auto; }
      #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win {
        width: 283rem;
        margin: 0 auto 16rem;
        display: flex;
        justify-content: space-between; }
        #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl dt {
          font-size: 14rem;
          line-height: 1;
          font-weight: 900;
          color: #FFF800;
          padding: 4rem 0 5rem;
          background: #003E92;
          margin-bottom: 4rem; }
        #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl dd {
          font-size: 20rem;
          line-height: 1.5em;
          font-weight: 900; }
          #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl dd .num {
            display: inline-block;
            font-size: 24rem;
            line-height: 1.5em; }
        #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl.short {
          width: 81rem; }
          #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl.short dd {
            font-size: 18rem;
            line-height: 1.2em; }
        #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl.long {
          width: 196rem; }
          #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_win dl.long dt {
            margin-bottom: 6rem; }
      #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_btn {
        width: 286rem;
        margin: 0 auto; }
        #experience .inner .experience_cont .experience_boxes .experience_box .experience_box_btn a {
          display: block;
          width: 100%;
          font-size: 18rem;
          line-height: 1;
          font-weight: 900;
          color: #fff;
          box-sizing: border-box;
          padding: 15rem 0;
          border: solid 2rem #FF0038;
          background: url("../img/arrow_white.png") no-repeat right 15rem center #FF0038;
          background-size: 6rem; }
      #experience .inner .experience_cont .experience_boxes .experience_box .causion {
        width: 283rem;
        margin: 16rem auto 0;
        font-size: 12rem;
        line-height: 1.5em;
        text-align: left; }
    #experience .inner .experience_cont.cont02 {
      margin-top: 60rem; }
      #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 16rem; }
        #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl {
          width: 132rem; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl.win02 {
            width: 124rem; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl.win03 {
            width: 154rem; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl.win04 {
            width: 103rem; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl.win05 {
            width: 137rem; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl dt {
            font-size: 14rem;
            line-height: 1;
            font-weight: 900;
            color: #FFF800;
            padding: 4rem 0 5rem;
            background: #003E92;
            margin-bottom: 0; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl dd {
            font-size: 18rem;
            line-height: 1.5em;
            font-weight: 900; }
            #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win dl dd .num {
              display: inline-block;
              font-size: 64rem;
              line-height: 1.2em; }
        #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item {
          width: auto;
          display: flex;
          justify-content: center;
          align-items: center;
          flex-direction: column; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item.item01 img {
            width: 135rem;
            margin-left: auto; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item.item02 img {
            width: 143rem; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item.item03 img {
            width: 113rem; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item.item04 img {
            width: 164rem; }
          #experience .inner .experience_cont.cont02 .experience_boxes .experience_box .experience_box_win .item.item05 img {
            width: 130rem; }

  #apply .inner {
    width: 354rem;
    margin: 80rem auto; }
    #apply .inner .sec_ttl {
      margin: 0 auto 40rem;
      text-align: center;
      padding-bottom: 11rem;
      background: url("../img/sec_ttl_line_sp.png") no-repeat center bottom;
      background-size: 329rem 2rem; }
      #apply .inner .sec_ttl h2 {
        display: inline-block;
        font-size: 32rem;
        line-height: 1.2em;
        font-weight: 900;
        color: #fff;
        transform: skewX(-5deg); }
    #apply .inner .apply_txt {
      width: 329rem;
      margin: 0 auto 40rem;
      font-size: 24rem;
      line-height: 1.5em;
      font-weight: 900;
      color: #fff;
      text-align: center; }
      #apply .inner .apply_txt span {
        display: inline-block;
        letter-spacing: 0.01em;
        color: #FFF800; }
    #apply .inner ul {
      width: 329rem;
      margin: 0 auto 40rem; }
      #apply .inner ul li {
        font-size: 15rem;
        line-height: 1.5em;
        font-weight: bold;
        color: #fff; }
        #apply .inner ul li:nth-child(n+2) {
          margin-top: 8rem; }
    #apply .inner .apply_btn {
      width: 100%;
      margin: 0 auto; }
      #apply .inner .apply_btn a {
        display: block;
        width: 100%;
        font-size: 23rem;
        line-height: 1.5em;
        font-weight: 900;
        color: #fff;
        box-sizing: border-box;
        padding: 26rem 0 26rem 26rem;
        background: url("../img/btn_arrow.png") no-repeat right 26rem center #FF0038;
        background-size: 26rem;
        box-shadow: 6rem 9rem 2rem #802424; }

  #notes .inner {
    width: 361rem;
    margin: 0 auto;
    padding-bottom: 72rem; }
    #notes .inner .sec_ttl {
      margin: 0 auto 24rem;
      text-align: center;
      padding-bottom: 11rem;
      background: url("../img/sec_ttl_line_sp_02.png") no-repeat center bottom;
      background-size: 307rem 2rem; }
      #notes .inner .sec_ttl h2 {
        display: inline-block;
        font-size: 32rem;
        line-height: 1.2em;
        font-weight: 900;
        color: #fff;
        transform: skewX(-5deg); }
    #notes .inner .notes_txt {
      font-size: 12rem;
      line-height: 1.5em;
      font-weight: bold;
      color: #fff;
      text-align: center;
      margin-bottom: 24rem; }
    #notes .inner .notes_box {
      height: 440rem;
      box-sizing: border-box;
      padding: 5rem 0;
      background: #fff; }
      #notes .inner .notes_box .scroll {
        height: 100%;
        overflow-y: scroll;
        box-sizing: border-box;
        padding: 0 20rem 0 16rem;
        /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
        -ms-overflow-style: none;
        /*Firefoxへの対応*/
        scrollbar-width: none;
        /*Google Chrome、Safariへの対応*/ }
        #notes .inner .notes_box .scroll-webkit-scrollbar {
          display: none; }
        #notes .inner .notes_box .scroll .simplebar-scrollbar {
          background-color: #000 !important;
          border-radius: 10rem; }
          #notes .inner .notes_box .scroll .simplebar-scrollbar::before {
            background: #000; }
        #notes .inner .notes_box .scroll .simplebar-track {
          background-color: #ECECEC;
          border-radius: 10rem;
          right: 5rem; }
      #notes .inner .notes_box .notes_box_txt {
        font-size: 14rem;
        letter-spacing: 0.04em;
        line-height: 1.8em;
        font-weight: 500;
        color: #999999; }
        #notes .inner .notes_box .notes_box_txt a {
          color: #999999;
          text-decoration: underline; }
        #notes .inner .notes_box .notes_box_txt dl dd {
          box-sizing: border-box;
          padding-left: 2em;
          text-indent: -1em; }

  footer {
    color: #fff;
    text-align: center;
    background: #000; }
    footer .footer_contact {
      padding: 40rem 0 33rem;
      border-bottom: solid 1rem #ECECEC; }
      footer .footer_contact .sec_ttl {
        margin-bottom: 40rem; }
        footer .footer_contact .sec_ttl .ttl {
          display: inline-block;
          font-size: 32rem;
          line-height: 1.2em;
          font-weight: 900;
          transform: skewX(-5deg); }
      footer .footer_contact .footer_contact_txt {
        font-size: 16rem;
        line-height: 1.2em;
        font-weight: 900;
        margin-bottom: 40rem; }
      footer .footer_contact .footer_contact_address {
        margin-bottom: 40rem; }
        footer .footer_contact .footer_contact_address a {
          display: inline-block;
          font-size: 16rem;
          line-height: 1.2em;
          font-weight: 900;
          color: #fff; }
        footer .footer_contact .footer_contact_address .address_txt {
          font-size: 16rem;
          line-height: 1.2em;
          font-weight: 900; }
      footer .footer_contact ul {
        display: flex;
        justify-content: center; }
        footer .footer_contact ul li {
          width: 40rem;
          margin: 0 8rem; }
          footer .footer_contact ul li a {
            display: block;
            width: 100%; }
    footer .copyright {
      padding: 57rem 0 24rem;
      font-size: 14rem; }

  #contact {
    padding: 120rem 0 80rem; }

  .contact {
    margin-top: 80rem; }
    .contact .inner {
      width: 361rem;
      margin: 0 auto; }
      .contact .inner .sec_ttl {
        margin: 0 auto;
        text-align: center;
        padding-bottom: 11rem;
        background: url("../img/sec_ttl_line_sp.png") no-repeat center bottom;
        background-size: 329rem 2rem; }
        .contact .inner .sec_ttl h2 {
          display: inline-block;
          font-size: 32rem;
          line-height: 1.2em;
          font-weight: 900;
          color: #fff;
          transform: skewX(-5deg); }
      .contact .inner .contact_txt {
        width: 330rem;
        margin: 40rem auto 0;
        font-size: 15rem;
        line-height: 1.5em;
        font-weight: bold;
        color: #fff; }
      .contact .inner .contact_bg {
        width: 100%;
        padding: 88rem 0;
        background: #fff;
        margin-top: 40rem; }
        .contact .inner .contact_bg .form {
          width: 297rem;
          margin: 0 auto; }
          .contact .inner .contact_bg .form table {
            width: 100%;
            margin-bottom: 24rem; }
            .contact .inner .contact_bg .form table tr th {
              display: block;
              width: 100%;
              font-size: 18rem;
              letter-spacing: 0.04em;
              line-height: 1.8em;
              font-weight: bold;
              color: #333333;
              text-align: left; }
              .contact .inner .contact_bg .form table tr th div {
                display: inline-block;
                padding-right: 61rem;
                position: relative; }
                .contact .inner .contact_bg .form table tr th div::before {
                  position: absolute;
                  content: "任意";
                  width: 45rem;
                  height: 26rem;
                  right: 0;
                  top: 50%;
                  transform: translateY(-50%);
                  border-radius: 5rem;
                  background: #000;
                  font-size: 12rem;
                  letter-spacing: 0.04em;
                  line-height: 26rem;
                  font-weight: 500;
                  color: #fff;
                  text-align: center; }
                .contact .inner .contact_bg .form table tr th div.hissu::before {
                  background: #FF0038;
                  content: "必須"; }
            .contact .inner .contact_bg .form table tr td {
              display: block;
              width: 100%;
              color: #333333;
              padding: 8rem 0 24rem; }
              .contact .inner .contact_bg .form table tr td select {
                width: 100%;
                height: 47rem;
                font-size: 18rem;
                font-weight: 500;
                color: #333333;
                box-sizing: border-box;
                padding: 12rem 3em 12rem 16rem;
                border-radius: 5rem;
                border: solid 1rem #DDDDDD;
                background-image: url("../img/contact_select_btn.png"), linear-gradient(to bottom, #F9F9F9, #DCDCDC);
                background-repeat: no-repeat;
                background-position: right center, center;
                background-size: 43rem 47rem, cover;
                -webkit-appearance: none;
                appearance: none;
                /* デフォルトの矢印を*/
                font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
              .contact .inner .contact_bg .form table tr td input {
                width: 100%;
                height: 52rem;
                font-size: 18rem;
                font-weight: 500;
                box-sizing: border-box;
                padding: 10rem 16rem;
                border-radius: 5rem;
                border: solid 1rem #DDDDDD;
                font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
                .contact .inner .contact_bg .form table tr td input::placeholder {
                  color: #999999; }
              .contact .inner .contact_bg .form table tr td .doui {
                display: inline-block;
                font-size: 18rem;
                line-height: 20rem; }
                .contact .inner .contact_bg .form table tr td .doui input {
                  width: 20rem;
                  height: 20rem;
                  margin-right: 12rem;
                  vertical-align: -0.2em; }
              .contact .inner .contact_bg .form table tr td .address .address_box {
                display: flex;
                justify-content: flex-start;
                align-items: center;
                flex-wrap: wrap; }
                .contact .inner .contact_bg .form table tr td .address .address_box:nth-child(n+2) {
                  margin-top: 8rem; }
                .contact .inner .contact_bg .form table tr td .address .address_box .address_box_item {
                  width: 170rem;
                  font-size: 18rem;
                  letter-spacing: 0.04em;
                  line-height: 1.8em;
                  font-weight: bold; }
                .contact .inner .contact_bg .form table tr td .address .address_box .address_box_input {
                  width: 100%;
                  margin-top: 8rem; }
                  .contact .inner .contact_bg .form table tr td .address .address_box .address_box_input input {
                    width: 100%; }
                .contact .inner .contact_bg .form table tr td .address .address_box:first-child .address_box_item {
                  width: 131rem;
                  order: 1; }
                .contact .inner .contact_bg .form table tr td .address .address_box:first-child .address_box_btn {
                  order: 2;
                  margin-left: 24rem; }
                  .contact .inner .contact_bg .form table tr td .address .address_box:first-child .address_box_btn button {
                    width: 108rem;
                    height: 45rem;
                    font-size: 14rem;
                    line-height: 45rem;
                    font-weight: bold;
                    color: #625C60;
                    border-radius: 100rem;
                    border: solid 1rem #625C60;
                    background: #fff;
                    cursor: pointer; }
                .contact .inner .contact_bg .form table tr td .address .address_box:first-child .address_box_input {
                  order: 3; }
              .contact .inner .contact_bg .form table tr td .buy input {
                height: 52rem;
                padding: 0;
                border: none; }
              .contact .inner .contact_bg .form table tr td textarea {
                width: 100%;
                height: 214rem;
                font-size: 15rem;
                line-height: 1.5em;
                font-weight: 500;
                box-sizing: border-box;
                padding: 10rem 15rem;
                border-radius: 5rem;
                border: solid 1rem #DDDDDD;
                font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
                .contact .inner .contact_bg .form table tr td textarea::placeholder {
                  color: #999999; }
              .contact .inner .contact_bg .form table tr td .txt {
                font-size: 12rem;
                line-height: 2em;
                font-weight: 500;
                color: #625C60;
                margin-top: 8rem; }
              .contact .inner .contact_bg .form table tr td .causion {
                font-size: 12rem;
                line-height: 1.8em;
                font-weight: 500;
                color: #AFAFAF;
                margin-top: 8rem; }
            .contact .inner .contact_bg .form table tr:last-child td {
              padding-bottom: 0 !important; }
          .contact .inner .contact_bg .form .terms {
            margin-bottom: 24rem; }
            .contact .inner .contact_bg .form .terms .terms_ttl {
              font-size: 18rem;
              letter-spacing: 0.04em;
              line-height: 1.8em;
              font-weight: bold;
              color: #333333;
              margin-bottom: 8rem; }
            .contact .inner .contact_bg .form .terms .terms_box {
              height: 795rem;
              margin-bottom: 8rem;
              box-sizing: border-box;
              border-radius: 5rem;
              border: solid 1rem #DDDDDD; }
              .contact .inner .contact_bg .form .terms .terms_box .scroll {
                height: 100%;
                overflow-y: scroll;
                box-sizing: border-box;
                padding: 23rem 30rem 23rem 15rem;
                /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
                -ms-overflow-style: none;
                /*Firefoxへの対応*/
                scrollbar-width: none;
                /*Google Chrome、Safariへの対応*/ }
                .contact .inner .contact_bg .form .terms .terms_box .scroll-webkit-scrollbar {
                  display: none; }
                .contact .inner .contact_bg .form .terms .terms_box .scroll .simplebar-scrollbar {
                  background-color: #000 !important;
                  border-radius: 10rem; }
                  .contact .inner .contact_bg .form .terms .terms_box .scroll .simplebar-scrollbar::before {
                    background: #000; }
                .contact .inner .contact_bg .form .terms .terms_box .scroll .simplebar-track {
                  background-color: #ECECEC;
                  border-radius: 10rem;
                  right: 8rem; }
              .contact .inner .contact_bg .form .terms .terms_box .terms_box_txt {
                font-size: 14rem;
                letter-spacing: 0.04em;
                line-height: 1.8em;
                font-weight: 500;
                color: #999999; }
                .contact .inner .contact_bg .form .terms .terms_box .terms_box_txt a {
                  color: #999999;
                  text-decoration: underline; }
                .contact .inner .contact_bg .form .terms .terms_box .terms_box_txt dl dd {
                  box-sizing: border-box;
                  padding-left: 2em;
                  text-indent: -1em; }
            .contact .inner .contact_bg .form .terms .terms_check_txt {
              font-size: 16rem;
              line-height: 1.1875em;
              color: #999999;
              margin-bottom: 8rem; }
              .contact .inner .contact_bg .form .terms .terms_check_txt span {
                color: #0066A0; }
            .contact .inner .contact_bg .form .terms .check label {
              display: inline-block;
              font-size: 16rem;
              color: #333; }
              .contact .inner .contact_bg .form .terms .check label input {
                width: 20rem;
                height: 20rem;
                margin-right: 12rem;
                vertical-align: -0.2em; }
          .contact .inner .contact_bg .form .form_btn {
            display: flex;
            justify-content: center; }
            .contact .inner .contact_bg .form .form_btn .submit {
              width: 100%;
              margin: 0 auto;
              font-size: 24rem;
              line-height: 1.5em;
              font-weight: 900;
              color: #fff;
              text-align: left;
              box-sizing: border-box;
              padding: 20rem 0 20rem 38rem;
              border: solid 2rem #FF0038;
              background: url("../img/btn_arrow.png") no-repeat right 38rem center #FF0038;
              background-size: 40rem;
              cursor: pointer;
              transition: 0.3s;
              font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }

  #confirm {
    padding: 80rem 0; }
    #confirm .contact .inner .contact_bg {
      width: 100%;
      padding: 80rem 0;
      background: #fff;
      margin-top: 40rem; }
      #confirm .contact .inner .contact_bg .form table {
        width: 100%;
        margin-bottom: 24rem; }
        #confirm .contact .inner .contact_bg .form table tr th {
          display: block;
          width: 100%;
          font-size: 18rem;
          letter-spacing: 0.04em;
          line-height: 1.8em;
          font-weight: bold;
          color: #333333;
          text-align: left; }
          #confirm .contact .inner .contact_bg .form table tr th div {
            display: block;
            padding-right: 0;
            position: relative; }
            #confirm .contact .inner .contact_bg .form table tr th div::before {
              display: none !important; }
        #confirm .contact .inner .contact_bg .form table tr td {
          display: block;
          width: 100%;
          font-size: 18rem;
          line-height: 1.8em;
          font-weight: 500;
          color: #000;
          padding: 15rem 0 34rem 10rem; }
          #confirm .contact .inner .contact_bg .form table tr td .address .address_box {
            display: flex;
            justify-content: flex-start;
            flex-wrap: wrap; }
            #confirm .contact .inner .contact_bg .form table tr td .address .address_box:nth-child(n+2) {
              margin-top: 18rem; }
            #confirm .contact .inner .contact_bg .form table tr td .address .address_box .address_box_item {
              width: 100%;
              font-size: 18rem;
              letter-spacing: 0.04em;
              line-height: 1.8em;
              font-weight: bold;
              margin-bottom: 18rem;
              position: relative;
              left: -10rem; }
            #confirm .contact .inner .contact_bg .form table tr td .address .address_box .address_box_input {
              width: 100%;
              font-size: 18rem;
              letter-spacing: 0.04em;
              line-height: 1.8em;
              font-weight: bold;
              margin-top: 0; }
          #confirm .contact .inner .contact_bg .form table tr td .txt {
            font-size: 12rem;
            line-height: 2em;
            font-weight: 500;
            color: #625C60;
            margin-top: 18rem;
            position: relative;
            left: -10rem; }
          #confirm .contact .inner .contact_bg .form table tr td .causion {
            font-size: 12rem;
            line-height: 1.8em;
            font-weight: 500;
            color: #AFAFAF;
            margin-top: 18rem;
            position: relative;
            left: -10rem; }
            #confirm .contact .inner .contact_bg .form table tr td .causion .indent {
              display: inline-block;
              box-sizing: border-box;
              padding-left: 1em;
              text-indent: -1em; }
      #confirm .contact .inner .contact_bg .form .form_btn {
        display: flex;
        justify-content: center; }
        #confirm .contact .inner .contact_bg .form .form_btn .submit {
          font-size: 20rem;
          box-sizing: border-box;
          padding: 27rem 0 27rem 22rem;
          background: url("../img/btn_arrow.png") no-repeat right 22rem center #FF0038;
          background-size: 40rem; }

  #thanks {
    padding: 80rem 0; }
    #thanks .contact .inner .contact_bg {
      width: 100%;
      box-sizing: border-box;
      padding: 40rem 18rem;
      background: #fff;
      margin-top: 40rem; }
      #thanks .contact .inner .contact_bg .thanks_ttl {
        font-size: 20rem;
        letter-spacing: 0.04em;
        line-height: 1.6em;
        font-weight: bold;
        color: #333333;
        text-align: center;
        margin-bottom: 24rem; }
      #thanks .contact .inner .contact_bg .thanks_txt {
        margin: 0 auto 40rem;
        font-size: 16rem;
        letter-spacing: 0.04em;
        line-height: 1.8em;
        font-weight: bold;
        color: #333333; }
      #thanks .contact .inner .contact_bg .causion {
        margin: 0 auto 40rem;
        font-size: 14rem;
        letter-spacing: 0.04em;
        line-height: 1.8em;
        font-weight: bold; }
      #thanks .contact .inner .contact_bg .thanks_btn {
        width: 100%;
        margin: 0 auto; }
        #thanks .contact .inner .contact_bg .thanks_btn a {
          display: block;
          width: 100%;
          font-size: 20rem;
          line-height: 1.5em;
          font-weight: 900;
          color: #fff;
          box-sizing: border-box;
          padding: 23rem 0 23rem 83rem;
          border: solid 2rem #000;
          background: url("../img/btn_arrow_black.png") no-repeat right 38rem center #000;
          background-size: 40rem; } }
