/* CSS Document */
/*---------------
	REQUEST
---------------*/
#request {
  background: #f2f2f3; }
  #request #follow {
    position: fixed;
    right: 0;
    bottom: 10%;
    z-index: 99; }
    #request #follow .close-btn {
      color: #999;
      font-size: 2.5em;
      padding: 0 8px;
      border: none;
      background-color: #fff;
      border: 2px solid #ccc;
      border-radius: 25px;
      cursor: pointer;
      position: absolute;
      top: -15px;
      left: -15px;
      z-index: 1; }
    #request #follow .follow-btn {
      align-items: center;
      width: 250px;
      margin: 0;
      text-align: center;
      line-height: 1.5;
      letter-spacing: .05em;
      border-radius: 10px 0 0 10px;
      border: 2px solid #ccc; }
      @media only screen and (max-width: 1199px) {
        #request #follow .follow-btn {
          width: 150px; } }
      #request #follow .follow-btn a {
        display: block;
        box-sizing: border-box; }
        #request #follow .follow-btn a.f1 {
          background: #6185bc;
          color: #fff;
          font-size: 2em;
          padding: 20px 0;
          border-radius: 10px 0 0 0;
          position: relative; }
          @media only screen and (max-width: 1199px) {
            #request #follow .follow-btn a.f1 {
              font-size: 1.4em;
              padding: 10px 0; } }
          #request #follow .follow-btn a.f1 img {
            width: 25px;
            position: absolute;
            top: 38px;
            right: 15px; }
            @media only screen and (max-width: 1199px) {
              #request #follow .follow-btn a.f1 img {
                width: 20px;
                top: 20px;
                right: 2px; } }
        #request #follow .follow-btn a.f2 {
          background: #fff;
          color: #6185bc;
          font-size: 1.8em;
          padding: 16px 0;
          border-radius: 0 0 0 10px;
          position: relative; }
          @media only screen and (max-width: 1199px) {
            #request #follow .follow-btn a.f2 {
              font-size: 1.4em;
              padding: 8px 0; } }
          #request #follow .follow-btn a.f2 img {
            width: 20px;
            position: absolute;
            bottom: 25px;
            left: 20px; }
            @media only screen and (max-width: 1199px) {
              #request #follow .follow-btn a.f2 img {
                width: 15px;
                bottom: 13px;
                left: 6px; } }
          #request #follow .follow-btn a.f2 span {
            display: block;
            text-indent: 1em;
            font-size: 1.5em;
            font-weight: 600; }
            @media only screen and (max-width: 1199px) {
              #request #follow .follow-btn a.f2 span {
                font-size: 1.2em; } }
  #request .contents-area {
    padding: 30px 0 120px;
    /*----- result -----*/
    /*----- overview -----*/
    /*----- merit -----*/
    /*----- consult -----*/ }
    @media only screen and (max-width: 1199px) {
      #request .contents-area {
        padding: 15px 0 60px; } }
    #request .contents-area .line {
      position: relative; }
      #request .contents-area .line:after {
        content: '';
        display: block;
        width: 100%;
        height: 4px;
        background: #1e5199;
        position: absolute;
        bottom: -4px;
        left: 0; }
    #request .contents-area .catch {
      width: 1200px;
      margin: 0 auto; }
      @media only screen and (max-width: 1199px) {
        #request .contents-area .catch {
          width: 90%;
          padding: 0 5%; } }
      #request .contents-area .catch h3 {
        text-align: center;
        color: var(--text-color);
        font-size: 2.5em;
        font-weight: 500;
        line-height: 1.3;
        letter-spacing: .1em; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .catch h3 {
            font-size: 2em;
            line-height: 1.5; } }
        #request .contents-area .catch h3 .blue {
          color: #1e5199; }
        #request .contents-area .catch h3 .huge {
          display: block;
          font-size: 3.2em;
          margin: 30px 0 15px; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .catch h3 .huge {
              font-size: 2.7em;
              line-height: 1.5;
              margin-top: 10px; } }
      #request .contents-area .catch p {
        text-align: center;
        font-size: 1.4em;
        font-weight: lighter;
        line-height: 1.5; }
    #request .contents-area .result {
      width: 100%;
      background: #fff;
      padding: 30px 0 90px;
      margin: 30px auto 100px; }
      @media only screen and (max-width: 1199px) {
        #request .contents-area .result {
          width: auto;
          padding: 15px 5% 60px;
          margin: 15px auto; } }
      #request .contents-area .result img {
        width: 100%;
        max-width: 1000px;
        margin: 0 auto; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .result img {
            max-width: 800px;
            margin: 0 auto; } }
      #request .contents-area .result table {
        width: 100%;
        max-width: 1000px;
        font-size: 1.8em;
        margin: 0 auto; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .result table {
            table-layout: fixed;
            font-size: 1.2em; } }
        #request .contents-area .result table thead {
          border-top: 1px solid #fff; }
          #request .contents-area .result table thead tr th {
            background: #1e5199;
            text-align: left;
            color: #fff;
            line-height: 70px;
            padding-left: 2em;
            border-right: 1px solid #fff;
            box-sizing: border-box; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .result table thead tr th {
                text-align: center;
                line-height: 3;
                padding: 0; } }
            #request .contents-area .result table thead tr th:last-child {
              border: none; }
        #request .contents-area .result table tbody tr {
          border-bottom: 1px solid #6185bc; }
          #request .contents-area .result table tbody tr td {
            color: var(--text-color);
            line-height: 1.5;
            vertical-align: middle;
            padding: 20px 0 20px 2em; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .result table tbody tr td {
                padding: 20px 1%; } }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .result table tbody tr td:nth-child(2) {
                padding: 20px 0; } }
      #request .contents-area .result .more__content {
        position: relative;
        height: auto;
        max-height: 700px;
        overflow: hidden;
        transition: max-height 1s; }
        #request .contents-area .result .more__content::after {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          z-index: 1;
          display: block;
          width: 100%;
          height: 100%;
          transition: 1s;
          background: linear-gradient(to bottom, transparent 0%, #fff 100%); }
        #request .contents-area .result .more__content.open:after {
          z-index: -1;
          opacity: 0; }
      #request .contents-area .result .more__btn {
        display: block;
        margin: 0 auto;
        border: 0;
        background: #fff;
        color: var(--text-color);
        font-size: 2em;
        cursor: pointer;
        margin-top: 2em; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .result .more__btn {
            font-size: 1.6em; } }
        #request .contents-area .result .more__btn i {
          color: #6185bc;
          margin-left: .5em; }
    #request .contents-area .overview {
      width: 1000px;
      margin: 0 auto; }
      @media only screen and (max-width: 999px) {
        #request .contents-area .overview {
          width: auto;
          padding: 0 5%; } }
      #request .contents-area .overview .white-box {
        background: #fff;
        padding: 70px 50px; }
        @media only screen and (max-width: 999px) {
          #request .contents-area .overview .white-box {
            max-width: 500px;
            padding: 30px 2%;
            margin: 0 auto; } }
        #request .contents-area .overview .white-box h3 {
          text-align: center;
          color: var(--text-color);
          font-size: 3em;
          font-weight: 500;
          letter-spacing: .1em; }
          @media only screen and (max-width: 999px) {
            #request .contents-area .overview .white-box h3 {
              font-size: 2em; } }
        #request .contents-area .overview .white-box h4 {
          background: var(--text-color);
          text-align: center;
          color: #fff;
          font-size: 3em;
          font-weight: 500;
          line-height: 1.5;
          letter-spacing: .1em;
          margin: 30px 0; }
          @media only screen and (max-width: 999px) {
            #request .contents-area .overview .white-box h4 {
              font-size: 2em;
              margin: 15px 0; } }
        #request .contents-area .overview .white-box table {
          width: 100%;
          color: var(--text-color);
          font-size: 1.8em;
          line-height: 2; }
          @media only screen and (max-width: 999px) {
            #request .contents-area .overview .white-box table {
              font-size: 1.6em; } }
          #request .contents-area .overview .white-box table tr {
            border-top: 1px solid #949ea1; }
            #request .contents-area .overview .white-box table tr th {
              width: 200px;
              text-align: left;
              vertical-align: middle;
              padding: 20px 0 20px 100px;
              position: relative; }
              @media only screen and (max-width: 999px) {
                #request .contents-area .overview .white-box table tr th {
                  display: block;
                  width: auto;
                  text-align: center;
                  padding: 30px 0 0 0; } }
              #request .contents-area .overview .white-box table tr th img {
                height: 65px;
                position: absolute;
                top: calc(50% - 33px);
                left: 10px; }
                @media only screen and (max-width: 999px) {
                  #request .contents-area .overview .white-box table tr th img {
                    height: 60px;
                    position: relative;
                    top: auto;
                    left: auto;
                    margin: 0 auto 1em !important; } }
              #request .contents-area .overview .white-box table tr th i {
                color: #6185bc;
                font-size: 2em;
                position: absolute;
                top: calc(50% - 19px);
                right: 4%; }
                @media only screen and (max-width: 999px) {
                  #request .contents-area .overview .white-box table tr th i {
                    font-size: 3em;
                    position: relative;
                    top: auto;
                    right: auto;
                    transform: rotate(90deg); } }
            #request .contents-area .overview .white-box table tr td {
              white-space: pre-wrap;
              padding: 20px 0 20px 1em; }
              @media only screen and (max-width: 999px) {
                #request .contents-area .overview .white-box table tr td {
                  white-space: pre-line;
                  display: block;
                  text-align: center;
                  padding: 0;
                  margin-bottom: 30px; } }
              #request .contents-area .overview .white-box table tr td span {
                height: 0; }
        #request .contents-area .overview .white-box p {
          text-align: center;
          font-size: 2.5em;
          margin-top: 20px; }
          @media only screen and (max-width: 999px) {
            #request .contents-area .overview .white-box p {
              font-size: 2em;
              line-height: 1.5; } }
      #request .contents-area .overview .help {
        text-align: center;
        font-size: 3em;
        line-height: 2;
        margin: 40px 0 80px; }
        @media only screen and (max-width: 999px) {
          #request .contents-area .overview .help {
            font-size: 2em; } }
    #request .contents-area .merit {
      background: #dfe8f2;
      padding: 100px 0 120px;
      position: relative; }
      @media only screen and (max-width: 1199px) {
        #request .contents-area .merit {
          padding: 60px 5%; } }
      #request .contents-area .merit:after {
        content: '';
        display: block;
        width: 71px;
        height: 71px;
        background: #dfe8f2;
        transform: rotate(45deg);
        position: absolute;
        bottom: -35px;
        left: calc(50% - 35px);
        z-index: 1; }
      #request .contents-area .merit h3 {
        text-align: center;
        color: var(--text-color);
        font-size: 3em;
        margin-bottom: 70px; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .merit h3 {
            font-size: 2.5em;
            line-height: 1.5;
            margin-bottom: 40px; } }
        #request .contents-area .merit h3 span {
          color: #6185bc; }
      #request .contents-area .merit .merits {
        width: 1200px;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr;
        column-gap: 30px;
        margin: 0 auto; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .merit .merits {
            width: auto;
            max-width: 600px;
            padding: 0 2%;
            grid-template-columns: 1fr 1fr;
            column-gap: 20px;
            grid-row-gap: 40px; } }
        #request .contents-area .merit .merits dl {
          background: #fff;
          font-size: 2em;
          border-radius: 10px;
          padding-bottom: 40px; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .merit .merits dl {
              font-size: 1.6em;
              padding-bottom: 20px; } }
          #request .contents-area .merit .merits dl dt {
            width: 200px;
            background: #6185bc;
            text-align: center;
            color: #fff;
            font-weight: 500;
            line-height: 40px;
            margin: -20px auto 0; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .merit .merits dl dt {
                width: auto; } }
          #request .contents-area .merit .merits dl dd {
            text-align: center;
            color: var(--text-color);
            line-height: 1.5;
            margin: 40px 0; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .merit .merits dl dd {
                margin: 20px 0; } }
          #request .contents-area .merit .merits dl img {
            width: 130px;
            margin: 0 auto; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .merit .merits dl img {
                width: 100px; } }
      #request .contents-area .merit .solution {
        width: 900px;
        margin: 100px auto 0; }
        @media only screen and (max-width: 899px) {
          #request .contents-area .merit .solution {
            width: auto;
            max-width: 450px;
            padding: 0 2%;
            margin: 60px auto 0;
            position: relative;
            z-index: 2; } }
        #request .contents-area .merit .solution h4 {
          background: #6185bc;
          text-align: center;
          color: #fff;
          font-size: 2.5em;
          line-height: 2.5em; }
          @media only screen and (max-width: 899px) {
            #request .contents-area .merit .solution h4 {
              font-size: 2em; } }
        #request .contents-area .merit .solution .grid {
          display: grid;
          grid-template-columns: 1fr 1fr 1fr;
          border: 2px solid #6185bc; }
          @media only screen and (max-width: 899px) {
            #request .contents-area .merit .solution .grid {
              display: block; } }
          #request .contents-area .merit .solution .grid dl {
            background: #fff;
            padding: 35px 0 20px; }
            @media only screen and (max-width: 899px) {
              #request .contents-area .merit .solution .grid dl {
                display: grid;
                grid-template-columns: 40% 60%;
                padding: 20px 0 15px; } }
            #request .contents-area .merit .solution .grid dl:nth-child(2) {
              border-left: 2px solid #6185bc;
              border-right: 2px solid #6185bc; }
              @media only screen and (max-width: 899px) {
                #request .contents-area .merit .solution .grid dl:nth-child(2) {
                  border-left: none;
                  border-right: none;
                  border-top: 2px solid #6185bc;
                  border-bottom: 2px solid #6185bc; } }
            @media only screen and (max-width: 899px) {
              #request .contents-area .merit .solution .grid dl dt {
                position: relative; } }
            #request .contents-area .merit .solution .grid dl dt img {
              height: 90px;
              margin: 0 auto 15px; }
              @media only screen and (max-width: 899px) {
                #request .contents-area .merit .solution .grid dl dt img {
                  height: 80px;
                  margin: 0 auto; } }
            @media only screen and (max-width: 899px) {
              #request .contents-area .merit .solution .grid dl dt:before {
                content: '';
                width: 100%;
                height: 2px;
                display: block;
                background: #fff;
                position: absolute;
                bottom: 0; } }
            @media only screen and (max-width: 899px) {
              #request .contents-area .merit .solution .grid dl dt:after {
                content: '';
                width: 15px;
                height: 1px;
                display: block;
                background: #6185bc;
                position: absolute;
                top: 50%;
                right: 0; } }
            #request .contents-area .merit .solution .grid dl dd {
              text-align: center;
              color: #6185bc;
              font-size: 1.2em;
              line-height: 1.5; }
              #request .contents-area .merit .solution .grid dl dd .tel {
                color: #6185bc;
                font-size: 2em; }
                @media only screen and (max-width: 899px) {
                  #request .contents-area .merit .solution .grid dl dd .tel {
                    font-size: 1.8em;
                    letter-spacing: .05em; } }
              #request .contents-area .merit .solution .grid dl dd .fax {
                display: inline-block;
                color: #6185bc;
                font-size: 2em;
                margin-top: 15px; }
                @media only screen and (max-width: 899px) {
                  #request .contents-area .merit .solution .grid dl dd .fax {
                    font-size: 1.8em;
                    letter-spacing: .05em;
                    margin-top: 25px; } }
              #request .contents-area .merit .solution .grid dl dd .btn {
                display: inline-block;
                background: #6185bc;
                color: #fff;
                padding: 5px 15px;
                margin-top: 15px; }
                @media only screen and (max-width: 899px) {
                  #request .contents-area .merit .solution .grid dl dd .btn {
                    margin-top: 25px; } }
    #request .contents-area .consult .wht {
      background: #fff;
      padding: 120px 0;
      position: relative; }
      @media only screen and (max-width: 1199px) {
        #request .contents-area .consult .wht {
          padding: 60px 5%; } }
      #request .contents-area .consult .wht:after {
        content: '';
        display: block;
        width: 71px;
        height: 71px;
        background: #fff;
        transform: rotate(45deg);
        position: absolute;
        bottom: -35px;
        left: calc(50% - 35px);
        z-index: 1; }
      #request .contents-area .consult .wht h3 {
        width: 1200px;
        text-align: right;
        color: var(--text-color);
        font-size: 3em;
        margin: 0 auto 80px;
        position: relative; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .consult .wht h3 {
            width: auto;
            font-size: 2em;
            line-height: 2;
            text-align: center;
            margin: 0 auto 30px; } }
        #request .contents-area .consult .wht h3 img {
          height: 60px;
          position: absolute;
          left: 0;
          top: -20px; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .wht h3 img {
              position: relative;
              left: auto;
              top: auto;
              margin: 0 auto 1em; } }
      #request .contents-area .consult .wht .cont__gridBox {
        width: 1200px;
        display: grid;
        grid-template-columns: 1fr 600px;
        column-gap: 80px;
        margin: 0 auto; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .consult .wht .cont__gridBox {
            width: auto;
            display: block; } }
        #request .contents-area .consult .wht .cont__gridBox .left p {
          font-size: 1.8em;
          line-height: 2; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .wht .cont__gridBox .left p {
              font-size: 1.6em;
              text-align: center; } }
          #request .contents-area .consult .wht .cont__gridBox .left p.cont__btn {
            font-size: 2em;
            line-height: 40px;
            font-weight: 500;
            position: relative;
            margin-top: 200px; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .consult .wht .cont__gridBox .left p.cont__btn {
                margin: 30px 0; } }
            #request .contents-area .consult .wht .cont__gridBox .left p.cont__btn a {
              color: #6185bc;
              padding-left: 2.5em; }
              @media only screen and (max-width: 1199px) {
                #request .contents-area .consult .wht .cont__gridBox .left p.cont__btn a {
                  padding: 0;
                  position: relative; } }
              #request .contents-area .consult .wht .cont__gridBox .left p.cont__btn a i {
                font-size: 1.9em;
                position: absolute;
                left: 0; }
                @media only screen and (max-width: 1199px) {
                  #request .contents-area .consult .wht .cont__gridBox .left p.cont__btn a i {
                    left: -1.2em; } }
        #request .contents-area .consult .wht .cont__gridBox .right .solution {
          width: 600px; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .wht .cont__gridBox .right .solution {
              width: auto;
              max-width: 450px;
              padding: 0 2%;
              margin: 60px auto 0;
              position: relative;
              z-index: 2; } }
          #request .contents-area .consult .wht .cont__gridBox .right .solution h4 {
            background: #6185bc;
            text-align: center;
            color: #fff;
            font-size: 2.5em;
            line-height: 2.5em; }
            @media only screen and (max-width: 899px) {
              #request .contents-area .consult .wht .cont__gridBox .right .solution h4 {
                font-size: 2em; } }
          #request .contents-area .consult .wht .cont__gridBox .right .solution .grid {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            border: 2px solid #6185bc; }
            @media only screen and (max-width: 899px) {
              #request .contents-area .consult .wht .cont__gridBox .right .solution .grid {
                display: block; } }
            #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl {
              background: #fff;
              padding: 35px 0 20px; }
              @media only screen and (max-width: 899px) {
                #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl {
                  display: grid;
                  grid-template-columns: 40% 60%;
                  padding: 20px 0 15px; } }
              #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl:nth-child(2) {
                border-left: 2px solid #6185bc;
                border-right: 2px solid #6185bc; }
                @media only screen and (max-width: 899px) {
                  #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl:nth-child(2) {
                    border-left: none;
                    border-right: none;
                    border-top: 2px solid #6185bc;
                    border-bottom: 2px solid #6185bc; } }
              @media only screen and (max-width: 899px) {
                #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dt {
                  position: relative; } }
              #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dt img {
                height: 90px;
                margin: 0 auto 15px; }
                @media only screen and (max-width: 899px) {
                  #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dt img {
                    height: 80px;
                    margin: 0 auto; } }
              @media only screen and (max-width: 899px) {
                #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dt:before {
                  content: '';
                  width: 100%;
                  height: 2px;
                  display: block;
                  background: #fff;
                  position: absolute;
                  bottom: 0; } }
              @media only screen and (max-width: 899px) {
                #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dt:after {
                  content: '';
                  width: 15px;
                  height: 1px;
                  display: block;
                  background: #6185bc;
                  position: absolute;
                  top: 50%;
                  right: 0; } }
              #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dd {
                text-align: center;
                color: #6185bc;
                font-size: 1.2em;
                line-height: 1.5; }
                #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dd .tel {
                  color: #6185bc;
                  font-size: 2em; }
                  @media only screen and (max-width: 899px) {
                    #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dd .tel {
                      font-size: 1.8em;
                      letter-spacing: .05em; } }
                #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dd .fax {
                  display: inline-block;
                  color: #6185bc;
                  font-size: 2em;
                  margin-top: 15px; }
                  @media only screen and (max-width: 899px) {
                    #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dd .fax {
                      font-size: 1.8em;
                      letter-spacing: .05em;
                      margin-top: 25px; } }
                #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dd .btn {
                  display: inline-block;
                  background: #6185bc;
                  color: #fff;
                  padding: 5px 15px;
                  margin-top: 15px; }
                  @media only screen and (max-width: 899px) {
                    #request .contents-area .consult .wht .cont__gridBox .right .solution .grid dl dd .btn {
                      margin-top: 25px; } }
    #request .contents-area .consult #guidance {
      padding-top: 190px; }
      @media only screen and (max-width: 1199px) {
        #request .contents-area .consult #guidance {
          padding: 90px 5% 30px; } }
      #request .contents-area .consult #guidance p {
        width: 700px;
        background: #1e5199;
        text-align: center;
        text-indent: 1em;
        color: #fff;
        font-size: 3em;
        line-height: 1.2;
        padding: 50px 0 10px;
        margin: 0 auto;
        position: relative; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .consult #guidance p {
            width: 100%;
            max-width: 400px;
            text-indent: 2em;
            font-size: 1.8em;
            line-height: 1.5;
            padding: 20px 0 0; } }
        #request .contents-area .consult #guidance p img {
          height: 40px;
          position: absolute;
          top: 45px;
          left: 90px; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult #guidance p img {
              height: 25px;
              top: 20px;
              left: 5vw; } }
        #request .contents-area .consult #guidance p i {
          text-indent: -.1em; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult #guidance p i {
              text-indent: 0; } }
    #request .contents-area .consult .form {
      width: 1200px;
      margin: 0 auto; }
      @media only screen and (max-width: 1199px) {
        #request .contents-area .consult .form {
          width: auto;
          max-width: 800px;
          padding: 0 5%;
          margin: 0 auto; } }
      #request .contents-area .consult .form h4 {
        color: var(--text-color);
        font-size: 3em;
        line-height: 1.2;
        letter-spacing: .1em;
        border-bottom: 1px solid #6185bc;
        margin: 50px 0 20px;
        position: relative; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .consult .form h4 {
            font-size: 2em;
            margin: 30px 0 20px; } }
        #request .contents-area .consult .form h4 .number {
          color: #6185bc;
          font-size: 2em;
          font-weight: 600;
          letter-spacing: .1em;
          margin-right: 5px; }
        #request .contents-area .consult .form h4 .note {
          color: #f00;
          font-size: .5em;
          position: absolute;
          right: 0;
          bottom: .5em; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form h4 .note {
              font-size: .6em;
              bottom: -1.8em; } }
      #request .contents-area .consult .form h3 {
        width: 1000px;
        color: var(--text-color);
        font-size: 1.8em;
        margin: 25px auto; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .consult .form h3 {
            width: auto; } }
      #request .contents-area .consult .form .cont__box {
        width: 1000px;
        margin: 0 auto;
		position: relative; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .consult .form .cont__box {
            width: auto; } }
        #request .contents-area .consult .form .cont__box.cont__box--flex {
          display: flex; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box.cont__box--flex {
              display: block; } }
          #request .contents-area .consult .form .cont__box.cont__box--flex dl {
            display: flex !important;
            margin-right: 2em; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .consult .form .cont__box.cont__box--flex dl {
                margin: 0; } }
            #request .contents-area .consult .form .cont__box.cont__box--flex dl dd {
              padding: 25px 0; }
              @media only screen and (max-width: 1199px) {
                #request .contents-area .consult .form .cont__box.cont__box--flex dl dd {
                  padding: 5px 0; } }
        #request .contents-area .consult .form .cont__box.cont__box--grid {
          display: grid;
          grid-template-columns: 1fr 1fr; }
        #request .contents-area .consult .form .cont__box dl {
          display: grid;
          grid-template-columns: 130px 1fr;
          color: var(--text-color);
          font-size: 1.8em; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box dl {
              display: block !important;
              font-size: 1.6em;
              margin-bottom: 20px; } }
          #request .contents-area .consult .form .cont__box dl dt {
            padding: 25px 0;
            margin-bottom: 15px; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .consult .form .cont__box dl dt {
                margin-bottom: 10px; } }
          #request .contents-area .consult .form .cont__box dl dd {
            position: relative; }
          #request .contents-area .consult .form .cont__box dl dd span {
            margin: 0 30px; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .consult .form .cont__box dl dd span {
                margin: 0 10px !important; } }
          #request .contents-area .consult .form .cont__box dl.radio-box {
            position: relative; }
            #request .contents-area .consult .form .cont__box dl.radio-box dd {
              padding: 25px 0 10px; }
              @media only screen and (max-width: 1199px) {
                #request .contents-area .consult .form .cont__box dl.radio-box dd {
                  padding: 0; } }
              #request .contents-area .consult .form .cont__box dl.radio-box dd span {
                margin: 0 !important; }
                #request .contents-area .consult .form .cont__box dl.radio-box dd span label {
                  margin-right: 2em; }
                  @media only screen and (max-width: 1199px) {
                    #request .contents-area .consult .form .cont__box dl.radio-box dd span label {
                      margin: 0; } }
              #request .contents-area .consult .form .cont__box dl.radio-box dd.etc {
                position: absolute;
                top: -25px;
                right: 0; }
                @media only screen and (max-width: 1199px) {
                  #request .contents-area .consult .form .cont__box dl.radio-box dd.etc {
                    position: static;
                    margin-top: .5em; } }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box dl.last-name {
              margin: 0; } }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box dl.last-name dd {
              margin-bottom: 15px; } }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box dl.first-name {
              margin: 0; } }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box dl.first-name dd {
              margin-bottom: 15px; } }
        #request .contents-area .consult .form .cont__box.cont__box--check dl {
          display: flex; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box.cont__box--check dl {
              margin: 0; } }
          #request .contents-area .consult .form .cont__box.cont__box--check dl dt {
            width: 100%;
            line-height: 2;
            margin: 0; }
            #request .contents-area .consult .form .cont__box.cont__box--check dl dt label {
              margin-right: 2em; }
              @media only screen and (max-width: 1199px) {
                #request .contents-area .consult .form .cont__box.cont__box--check dl dt label {
                  margin-right: 1em; } }
          #request .contents-area .consult .form .cont__box.cont__box--check dl dd span {
            margin: 0; }
          #request .contents-area .consult .form .cont__box.cont__box--check dl.type dt {
            width: 140px; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .consult .form .cont__box.cont__box--check dl.type dt {
                width: auto; } }
          #request .contents-area .consult .form .cont__box.cont__box--check dl.type dd {
            line-height: 2;
            padding: 25px 0 15px;
            margin: 0; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .consult .form .cont__box.cont__box--check dl.type dd {
                padding: 0; } }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .consult .form .cont__box.cont__box--check dl.type dd span {
                margin: 0 !important; } }
            #request .contents-area .consult .form .cont__box.cont__box--check dl.type dd span label {
              margin-right: 2em; }
              @media only screen and (max-width: 1199px) {
                #request .contents-area .consult .form .cont__box.cont__box--check dl.type dd span label {
                  margin-right: 1em; } }
          #request .contents-area .consult .form .cont__box.cont__box--check dl.wl {
            margin-left: 20px; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .consult .form .cont__box.cont__box--check dl.wl {
                display: block;
                margin: 0 0 20px 0; } }
            #request .contents-area .consult .form .cont__box.cont__box--check dl.wl dt {
              width: 140px;
              line-height: 1; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .consult .form .cont__box.cont__box--check dl.wl dd span {
                margin: 0 !important; } }
        #request .contents-area .consult .form .cont__box.cont__box--radio dl {
          display: flex; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box.cont__box--radio dl {
              margin: 0; } }
          #request .contents-area .consult .form .cont__box.cont__box--radio dl dt {
            width: 100%;
            line-height: 2;
            margin: 0; }
            #request .contents-area .consult .form .cont__box.cont__box--radio dl dt label {
              margin-right: 2em; }
              @media only screen and (max-width: 1199px) {
                #request .contents-area .consult .form .cont__box.cont__box--radio dl dt label {
                  margin-right: 1em; } }
          #request .contents-area .consult .form .cont__box.cont__box--radio dl dd span {
            margin: 0; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box.cont__box--radio dl.wl {
              display: block;
              margin-bottom: 20px; } }
          #request .contents-area .consult .form .cont__box.cont__box--radio dl.wl dt {
            width: 140px;
            line-height: 1; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box.cont__box--radio dl.wl dd span {
              margin: 0 !important; } }
        #request .contents-area .consult .form .cont__box dl {
          display: grid;
          grid-template-columns: 140px 1fr;
          color: var(--text-color);
          font-size: 1.8em; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box dl {
              font-size: 1.6em; } }
          #request .contents-area .consult .form .cont__box dl dt {
            padding: 25px 0;
            margin-bottom: 15px; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .consult .form .cont__box dl dt {
                padding: 5px 0;
                margin-bottom: 10px; } }
            #request .contents-area .consult .form .cont__box dl dt .red {
              color: #f00; }
          #request .contents-area .consult .form .cont__box dl dd span {
            margin: 0 30px; }
          #request .contents-area .consult .form .cont__box dl dd select {
            font-size: .9em;
            padding: 24px;
            border: none;
            border-right: 1em solid #fff; }
            @media only screen and (max-width: 1199px) {
              #request .contents-area .consult .form .cont__box dl dd select {
                padding: 5px;
                margin-bottom: 10px; } }
        #request .contents-area .consult .form .cont__box input {
          font-size: 1em;
          padding: 25px;
          border: none; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box input {
              padding: 20px 10px; } }
          #request .contents-area .consult .form .cont__box input::placeholder {
            color: #ccc; }
        #request .contents-area .consult .form .cont__box .big {
          width: 87%; }
        #request .contents-area .consult .form .cont__box .mid {
          width: 60%; }
        #request .contents-area .consult .form .cont__box .sml {
          width: 20%; }
        #request .contents-area .consult .form .cont__box .post {
          color: #999;
          margin: 0 0 25px 140px; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box .post {
              font-size: 1.4em;
              line-height: 1.5;
              margin: 1em 0 2em; } }
        #request .contents-area .consult .form .cont__box .half {
          width: 930px;
          text-align: right;
          color: #999;
          font-size: 1.6em;
          margin-bottom: 1em; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box .half {
              width: auto;
              text-align: left;
              font-size: 1.4em;
              margin-top: -1em; } }
        #request .contents-area .consult .form .cont__box .upl label {
          display: inline-block;
          cursor: pointer;
          background: #6185bc;
          color: #fff;
          font-size: 1.8em;
          padding: 1em 1.5em;
          border-radius: 5px;
          margin-bottom: 1em;
          transition: .5s; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box .upl label {
              font-size: 1.6em;
              padding: 1em;
              margin-bottom: .5em; } }
          #request .contents-area .consult .form .cont__box .upl label:hover {
            opacity: .8; }
        #request .contents-area .consult .form .cont__box .upl input {
          display: none; }
        #request .contents-area .consult .form .cont__box textarea {
          width: calc(100% - 50px);
          max-width: 950px;
          font-size: 1rem;
          line-height: 1.5;
          padding: 25px;
          border: none; }
          #request .contents-area .consult .form .cont__box textarea::placeholder {
            color: #ccc; }
          @media only screen and (max-width: 1199px) {
            #request .contents-area .consult .form .cont__box textarea {
              margin-top: 10px; } }
		#request .contents-area .consult .form .cont__box p {
			line-height: 1.5; }
      #request .contents-area .consult .form .agree {
        text-align: center;
        font-size: 1.8em;
        margin-top: 75px; }
        @media only screen and (max-width: 1199px) {
          #request .contents-area .consult .form .agree {
            font-size: 1.6em;
            margin-top: 60px; } }
        #request .contents-area .consult .form .agree input {
          margin-right: .5em; }
        #request .contents-area .consult .form .agree .agr {
          text-decoration: underline;
          color: #f00; }
          #request .contents-area .consult .form .agree .agr:hover {
            text-decoration: none; }
        #request .contents-area .consult .form .agree .btn {
          display: block;
          width: 340px;
          background: #6c84b9;
          color: #fff;
          line-height: 2.8;
          margin: 30px auto 0;
          position: relative; }
          #request .contents-area .consult .form .agree .btn img {
            width: 30px;
            position: absolute;
            top: 10px;
            right: 15px; }
          #request .contents-area .consult .form .agree .btn:hover {
            opacity: .8; }
		#request .contents-area .consult .form .cont__box .wpcf7-not-valid-tip { 
			margin: 0!important;
			position: absolute;
			left: .3em;
			bottom: 1.1em;
			font-size: 14px; }
		@media only screen and (max-width: 1199px) {
			#request .contents-area .consult .form .cont__box .wpcf7-not-valid-tip {
				top: auto;
				left: 0;
				bottom: auto;
				font-size: 12px; } }
