﻿/*///////////////////////////////////////////////////////////////////////
    PARTS                                                               */
/* ==================================================================
    reset                                                           */
    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
      line-height: 1em;
      vertical-align: middle
    }
    img {
      width: 100%;
      height: auto;
      line-height: 0;
      border: none
    }
    dl, dt, dd {
      margin: 0;
      font-weight: normal
    }
    label:hover {
      cursor: pointer;
    }
    table, table tr, table td, table th, p, ul, input {
      list-style: none outside none;
      margin: 0;
      padding: 0;
      font-weight: normal
    }
    h1 {
      margin-top: 0;
    }
    /* ==================================================================
        変数定義                                                       */ :root {
      --width-size-content: 95%;
      --font-size-main: 16px;
      --font-size-form: 0.875em;
      --font-size-note: 13px;
      --rbg-error-bg: 254, 235, 235;
      --color-error-bg: rgb(var(--rbg-error-bg));
      --rbg-error-font: 230, 0, 18;
      --color-error-font: rgb(var(--rbg-error-font));
      --rbg-form-gray: 245, 245, 245;
      --color-form-gray: rgb(var(--rbg-form-gray));
      --rbg-common-black: 34 34 34;
      --color-common-black: rgb(var(--rbg-common-black));
      --rbg-common-white: 255 255 255;
      --color-common-white: rgb(var(--rbg-common-white));
      --rbg-common-beige: 255 247 238;
      --color-common-beige: rgb(var(--rbg-common-beige));
      --rbg-common-green: 9 164 78;
      --color-common-green: rgb(var(--rbg-common-green));
      --rbg-common-ltOrange: 246 171 0;
      --color-common-ltOrange: rgb(var(--rbg-common-ltOrange));
      --rbg-common-orange: 235 96 0;
      --color-common-orange: rgb(var(--rbg-common-orange));
      --rbg-common-ltBlue: 237 247 254;
      --color-common-ltBlue: rgb(var(--rbg-common-ltBlue));
      --rbg-common-blue: 0 111 188;
      --color-common-blue: rgb(var(--rbg-common-blue));
      --rbg-common-dkBlue: 0 80 163;
      --color-common-dkBlue: rgb(var(--rbg-common-dkBlue));
      --rbg-common-skyBlue: 0 166 203;
      --color-common-skyBlue: rgb(var(--rbg-common-skyBlue));
      --rbg-common-ltGray: 247 247 247;
      --color-common-ltGray: rgb(var(--rbg-common-ltGray));
      --rbg-common-gray: 218 218 218;
      --color-common-gray: rgb(var(--rbg-common-gray));
      --rbg-common-dkGray: 153 153 153;
      --color-common-dkGray: rgb(var(--rbg-common-dkGray));
      --color-gradient-orange: linear-gradient(0deg, var(--color-common-orange), var(--color-common-ltOrange));
      --color-gradient-blue: linear-gradient(0deg, var(--color-common-blue), var(--color-common-skyBlue));
      --color-gradient-gray: linear-gradient(0deg, var(--color-common-gray), var(--color-common-white));
      --shadow-center: rgb(var(--rbg-common-black) / 0.25) 0 0 2px;
      --shadow-under: 0 2px 2px 0 rgb(var(--rbg-common-black) / 0.25), 0 1px 5px 0 rgb(var(--rbg-common-black) / 0.25), 0 3px 1px -2px rgb(var(--rbg-common-black) / 0.25);
      --border-solid-thin: solid 1px;
      --border-solid-medium: solid 2px;
      --border-common-style: var(--color-common-gray) var(--border-solid-thin);
      --border-corner-radius: 4px;
      --icon-triangle-top: polygon(0 100%, 50% 0, 100% 100%);
      --icon-triangle-right: polygon(0 0, 0% 100%, 100% 50%);
      --icon-border-triangle: polygon(0 7%, 7% 0, 57% 50%, 7% 100%, 0 93%, 43% 50%, 0 7%);
    }
    @media all and (min-width:768px) {
      :root {
        --width-size-content: 950px
      }
    }
    /* ==================================================================
        初期値                                                          */
    body {
      position: relative;
      font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Osaka, 'メイリオ', Meiryo, sans-serif;
      font-size: var(--font-size-main);
      color: var(--color-common-black)
    }
    #wrap {
      display: flex;
      flex-direction: column;
      min-height: 100vh;
      overflow: hidden
    }
    main {
      margin: 2em 0;
    }
    footer {
      margin-top: auto;
    }
    input:disabled {
      cursor: default !important
    }
    input[type="text"], input[type="number"], textarea {
      width: 100%
    }
    input[type="number"] {
      appearance: textfield;
      -moz-appearance: textfield;
      ime-mode: disabled
    }
    select {
      -webkit-appearance: none;
      appearance: none;
      -webkit-border-radius: 0
    }
    textarea, input[type="number"], input[type="text"] {
      -webkit-appearance: none;
      -webkit-border-radius: 0
    }
    input[type="submit"], input[type="button"], input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button {
      -webkit-appearance: none;
      margin: 0;
      -webkit-border-radius: 0
    }
    table {
      width: 100%;
      border-collapse: collapse
    }
    p {
      line-height: 1.7;
    }
    #wrap-contents {
      font-size: var(--font-size-form)
    }
    #wrap-contents a {
      display: inline-block;
      margin: 0 0.1em;
      color: var(--color-common-skyBlue)
    }
    /*--    最大横幅 
    ----------------------------------------------------*/
    #wrap-contents, #cms-header, #homeFooter #toTop, .smallfooter #homeFootBg #cms-footer {
      width: var(--width-size-content);
      margin: 0 auto
    }
    /* ==================================================================
        common
    /* none
    ------------------------------------------------------------------------------------ */
    #wrap .is-hide {
      display: none;
    }
		#wrap .sp-hide {
			display: none;
		}
		#wrap .pc-hide {
			display: inline-block;
		}
		@media all and (min-width:768px) {
			#wrap .sp-hide {
				display: inline-block;
			}
			#wrap .pc-hide {
				display: none;
			}

    }
    /*--    背景色
    ----------------------------------------------------*/
    .bcClr-ltGray {
      background-color: var(--color-common-ltGray) !important;
      color: var(--color-common-black) !important;
    }
    .bcClr-ltBlue {
      background-color: var(--color-common-ltBlue) !important;
      color: var(--color-common-black) !important;
    }
    .bcClr-blue {
      background-color: var(--color-common-blue) !important;
      color: var(--color-common-white) !important;
    }
    .bcClr-dkBlue {
      background-color: var(--color-common-dkBlue) !important;
      color: var(--color-common-white) !important;
    }
    .bcClr-green {
      background-color: var(--color-common-green) !important;
      color: var(--color-common-white) !important;
    }
    .bcClr-beige {
      background-color: var(--color-common-beige) !important;
      color: var(--color-common-black) !important;
    }
    /*--    線色
    ----------------------------------------------------*/
    .bdClr-orange {
      border-color: var(--color-common-orange) !important;
    }
    .bdClr-blue {
      border-color: var(--color-common-blue) !important;
    }

    /* ==================================================================
    parts                                                                */
    /*--    ページタイトル
    ---------------------------------------------------*/
    [class^="form_title"] {
      padding: var(--font-size-main) 0;
      margin-bottom: calc(var(--font-size-main)* 1);
      text-align: center;
      font-weight: normal;
      line-height: 1.35;
      font-size: 1.5em;
    }
    .form_title--border {
      border: var(--border-common-style)
    }
    .form_title--bdTB {
      border-top: var(--border-common-style);
      border-bottom: var(--border-common-style)
    }
    [class^="form_title"] span {
      display: block;
      font-size: 60%;
      line-height: 1.5
    }
		@media all and (min-width:768px) {
      [class^="form_title"]  {
        font-size: 2em;
      }
    }
    /*--    テーブルタイトル
    ---------------------------------------------------*/
    [class^="table-title"] {
      margin-bottom: var(--font-size-main);
      font-size: 1em;
      font-weight: bold
    }
    [class^="table-title--typePd"] {
      padding: var(--font-size-main)
    }
    .table-title--typePd_bd {
      margin-bottom: 0;
      border: var(--border-common-style);
    }
    .table-title--typeLf_bd {
      padding-left: 0.5em;
      border-left: solid 0.3em
    }
    /*--    その他ページタイトル
    ---------------------------------------------------*/
    [class^="page-title"] {
      margin: var(--font-size-main) 0;
      font-size: 1.5em;
      text-align: center;
    }
    .page-title--orange {
      color: var(--color-common-orange);
			line-height: 1.3;
    }
    /*--    注釈
    ---------------------------------------------------*/
    .area-caption, .area-note {
      margin: 1.5em 0
    }
    .area-note {
      padding: 1.5em;
      font-size: var(--font-size-note);
    }
    .area-note > dt {
      font-weight: bold;
    }
    .area-note > dt + dd {
      margin-top: 0.5em;
    }
    .area-note dd > p + p {
      line-height: 1.7;
    }
    .area-note ul li {
      text-indent: -1em;
      padding-left: 1em;
      line-height: 1.5;
    }
    .area-note ul li:before {
      content: "";
      display: inline-block;
      width: 2px;
      height: 2px;
      margin-right: 0.5em;
      background-color: currentColor;
      vertical-align: middle;
    }
    /* ==================================================================
       ボタン		                                                    */
    /*--    ボタンの領域
    ---------------------------------------------------*/
    .wrap-btn {
      margin: 32px 0;
    }
    .wrap-btn > li + li {
      margin: 8px auto auto auto;
    }
    @media all and (min-width:768px) {
      .wrap-btn {
        display: flex;
        justify-content: center;
        align-items: center;
      }
      .wrap-btn > li + li {
        margin: 0 0 0 24px;
      }
    }
    /*--    ボタンタイプ-共通
    ---------------------------------------------------*/
    .btn-common {
      position: relative;
      display: inline-block;
      width: 100%;
      min-width: 14em;
      padding: 0.5em;
      text-align: center;
      letter-spacing: 0.05em;
      border: none;
      cursor: pointer;
      transition: .3s all ease-out;
      -webkit-tap-highlight-color: transparent;
    }
    .btn-common:hover {
      opacity: 0.8;
    }
    /* フォームタイプ__basic */
    /* .type-basic .btn-common {
      padding: 1em;
      border-radius: var(--border-corner-radius);
      font-weight: bold;
      box-shadow: var(--shadow-under);
    } */
    /*--    矢印アイコン
    ---------------------------------------------------*/
    /* 共通 */
    .btn-common.borderArrow:before, .btn-common.roundArrow:before, .btn-common.roundArrow:after {
      content: '';
      position: absolute;
      top: 0;
      bottom: 0;
      margin: auto;
    }
    .btn-common.borderArrow:before, .btn-common.roundArrow:before {
      width: 1em;
      height: 1em;
    }
    .btn-common.roundArrow:after {
      width: 0.45em;
      height: 0.5em;
    }
    /* 矢印アイコン-棒線矢印 */
    .btn-common.borderArrow:before {
  left: .5em;
      -webkit-clip-path: var(--icon-border-triangle);
      clip-path: var(--icon-border-triangle);
      -webkit-aspect-ratio: 1;
      aspect-ratio: 1;
      background-color: currentColor;
    }
    /* 矢印アイコン-丸矢印 */
    .btn-common.roundArrow:before {
      right: 1em;
      border-radius: 50%;
      background-color: var(--color-form-white);
    }
    .btn-common.roundArrow:after {
      right: 1.2em;
      -webkit-clip-path: var(--icon-triangle-right);
      clip-path: var(--icon-triangle-right);
      background-color: currentColor;
    }
    /*--    ボタンタイプ-住所
    ---------------------------------------------------*/
    /* .btn-zip {
      min-width: 4em;
      padding: 1em;
      font-weight: normal !important;
      font-size: var(--font-size-form);
      color: var(--color-common-white);
      background-color: var(--color-common-dkGray);
    }
    .btn-zip.borderArrow {
      padding-left: 1.5em;
    }
    .btn-zip.borderArrow:before {
      left: 0.5em;
    }
    /* フォームタイプ__basic */
    /* .type-basic .btn-zip {
      color: var(--color-common-black);
      border: var(--border-common-style);
      background: var(--color-gradient-gray);
    } */
    /*--    ボタンタイプ-確認画面へ⇔入力画面へ
    ---------------------------------------------------*/
    /* 共通 */
    .btn-confirm, .btn-return {
			padding:  1em 0.5em 1em 1em;
      color: var(--color-common-white);
			font-size: 1.3em;
    }
    @media screen and (min-width:768px) {
      .btn-confirm, .btn-return {
        display: inline-block;
				padding: 0.5em 0.5em 0.5em 1em;
        font-size: 1.5em;
      }
    }
    /* 確認画面 */
    .btn-confirm, .btn-confirm.roundArrow:after {
      color: var(--color-common-white);
      background-color: var(--color-common-blue);
    }
    .btn-confirm.roundArrow:before {
      background-color: var(--color-common-white);
    }
    /* フォームタイプ__basic */
    /* .type-basic .btn-confirm {
      background: var(--color-gradient-orange);
    }
    .type-basic .btn-confirm.roundArrow:after {
      background-color: var(--color-common-orange);
    } */
    /* 入力画面へ */
    .btn-return {
      background-color: var(--color-common-dkGray);
    }
    .btn-return.borderArrow:before, .btn-return.roundArrow:before, .btn-return.roundArrow:after {
      right: auto;
      transform: rotate(-180deg);
    }
    .btn-return.borderArrow:before {
      left: 0.5em;
    }
    .btn-return.roundArrow:before {
      left: 1em;
      background-color: var(--color-common-white);
    }
    .btn-return.roundArrow:after {
      left: 1.25em;
      background-color: var(--color-common-dkGray);
    }
    /* フォームタイプ__basic */
    /* .type-basic .btn-return {
      background: var(--color-gradient-blue);
    }
    .type-basic .btn-return.roundArrow:after {
      background-color: var(--color-common-blue);
    } */
    /*--    checkboxボタン
    ---------------------------------------------------*/
    .button-checked input {
      display: none;
    }
    .button-checked input + label {
      position: relative;
      border: solid 2px transparent;
      cursor: pointer;
      display: block;
      margin: 8px 0;
      padding: 8px;
      line-height: 1em;
      transition: all .3s;
    }
    .button-checked input + label {
      border-radius: var(--border-corner-radius);
      border-color: #c0bfbb;
      color: #c0bfbb;
    }
    .button-checked input + label::after, .button-checked input + label::before {
      content: '';
      position: absolute;
      top: 0;
      bottom: 0;
      right: 16px;
      margin: auto;
      width: 2px;
      height: 12px;
      z-index: 1;
      background-color: #c0bfbb;
      transition: all .3s;
    }
    .button-checked input + label::after {
      transform: rotate(0);
    }
    .button-checked input + label::before {
      transform: rotate(90deg);
    }
    .button-checked input:checked + label {
      border-color: #0060a7;
      color: #0060a7;
    }
    .button-checked input:checked + label::after {
      background-color: #0060a7;
      transform: rotate(90deg);
    }
    @media screen and (min-width:768px) {
      .button-checked {
        width: 12em;
      }
    }
    /*--    ボタンタイプ-シンプルボタン（TOPへ戻る等）
    ---------------------------------------------------*/
    .btn-simple, .btn-simple.roundArrow:after {
      background-color: var(--color-common-white)
    }
    .btn-simple {
      border: var(--border-common-style);
      background-color: var(--color-common-white);
      color: var(--color-common-black) !important
    }
    .btn-simple.roundArrow:before {
      background-color: var(--color-common-orange)
    }
    .btn-simple:hover {
      border: var(--color-common-orange) var(--border-solid-thin);
      background-color: var(--color-common-beige)
    }
    /* ==================================================================
       リンク		                                                    */
    /* テキストライン */
    .link-style--under {
      text-decoration: underline;
      vertical-align: baseline
    }
    /* リンクアイコン-別タブ表示 */
    .link-icon--blank {
      position: relative;
      padding-right: 1.2em;
    }
    .link-icon--blank::after, .link-icon--blank::before {
      content: "";
      position: absolute;
      margin: auto;
      display: inline-block;
      width: 0.65em;
      height: 0.5em;
      vertical-align: middle;
      border: currentColor var(--border-solid-thin);
      background-color: var(--color-common-white);
    }
    .link-icon--blank::before {
      top: 0.4em;
      bottom: 0;
      right: 0.2em;
    }
    .link-icon--blank::after {
      top: 0;
      bottom: 0;
      right: 0;
    }
    /* ==================================================================
        フロー図		                                                 */
    @media screen and (min-width:768px) {
      .item-flow {
        width: 50%;
        margin: auto;
      }
      .item-flow li {
        min-width: 10em;
      }
    }
    .item-flow {
      display: flex;
      justify-content: center;
      overflow: hidden;
    }
    .item-flow li {
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
      width: 100%;
      height: 2.5em;
      margin: 0 1.3em 0 0;
      background-color: #FFFFFF;
      border-top: 1px solid #999999;
      border-left: 1px solid #999999;
      border-bottom: 1px solid #999999;
    }
    .item-flow li:after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      right: -0.85em;
      margin: auto;
      height: 2em;
      width: 2em;
      z-index: -1;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      background: #FFFFFF;
      border-top: 1px solid #999999;
      border-right: 1px solid #999999;
    }
    /* アクティブ */
    .item-flow li.active, .item-flow li.active:after {
      background-color: #0070BC;
      border-color: #0070BC;
      color: #FFFFFF;
    }
    /*--    header
    ---------------------------------------------------*/
    @media screen and (min-width: 768px) {
      #headerArea {
        height: 107px;
      }
    }
    #cms-header {
      margin-bottom: 1em;
    }
    #cms-header #logo {
      display: flex;
      justify-content: space-between;
      align-items: center;
      width: 100%;
      margin: 1em 0;
    }
    /* #cms-header #logo img{
      max-height: 40px;
    } */
    #contentsArea {
      margin-top: 40px;
    }
    /*--    footer
    ---------------------------------------------------*/
    #homeFooter #toTop a {
      display: block;
      padding: 0.5em;
      margin: 0 0 0 auto;
      max-width: 195px;
      border-radius: var(--border-corner-radius) var(--border-corner-radius) 0 0;
      background-color: var(--color-common-skyBlue);
      color: var(--color-common-white);
      text-decoration: none;
      font-weight: bold;
      font-size: 12px;
      letter-spacing: 0.05em;
      text-align: center;
    }
    #homeFooter #toTop a::before {
      content: "";
      display: inline-block;
      margin-right: 5px;
      width: 10px;
      height: 8px;
      background-color: var(--color-common-white);
      -webkit-clip-path: var(--icon-triangle-top);
      clip-path: var(--icon-triangle-top);
    }
    #homeFooter #homeFootBg {
      background: linear-gradient(0deg, var(--color-common-blue), var(--color-common-skyBlue));
      color: var(--color-common-white);
    }
    #homeFooter #homeFootBg a {
      color: var(--color-common-white);
      text-decoration: none;
    }
    /* cms-footer_small */
    .smallfooter #homeFootBg #cms-footer {
      padding: 1.5em 0;
      font-size: 12px;
    }
    .smallfooter #homeFootBg #cms-footer #footer-info #copyright {
      font-family: "メイリオ", Meiryo, Arial, Roboto, "Droid Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif !important;
      font-size: 10px;
      text-align: center;
      color: var(--color-common-white);
    }
    .smallfooter #homeFootBg #cms-footer #footer-info #foot-navi li {
      margin: 0 0.5em 0.5em;
    }
    @media all and (min-width:768px) {
      .smallfooter #homeFootBg #cms-footer #footer-info #foot-navi {
        order: 2;
      }
      .smallfooter #homeFootBg #cms-footer #footer-info, .smallfooter #homeFootBg #cms-footer #footer-info #foot-navi ul {
        display: flex;
        justify-content: space-between;
        align-items: center;
      }
      .smallfooter #homeFootBg #cms-footer #footer-info #foot-navi li {
        margin: 0 0 0 1em;
      }
    }
    .smallfooter #homeFootBg #cms-footer #footer-info #foot-navi ul li:before {
      content: "";
      display: inline-block;
      margin-right: 0.5em;
      width: 0.5em;
      height: 0.65em;
      background-color: var(--color-common-white);
      -webkit-clip-path: var(--icon-triangle-right);
      clip-path: var(--icon-triangle-right);
      vertical-align: middle;
    }
    .footer_hij2016 {
      background: #fff;
      padding: 20px 0;
      border-top: 1px solid #ccc;
      text-align: center;
      font-size: 12px;
    }
    .footer_hij2016 ul {
      margin-bottom: 10px;
    }
    .footer_hij2016 ul li {
      display: inline-block;
    }
    .footer_hij2016 ul li:before {
      content: '';
      display: inline-block;
      width: 0.5em;
      height: 0.65em;
      margin-right: 0.5em;
      background: var(--color-common-skyBlue);
      -webkit-clip-path: var(--icon-triangle-right);
      clip-path: var(--icon-triangle-right);
    }
    .footer_hij2016 a {
      color: #333;
      text-decoration: none;
    }
    .footer_hij2016 #footer-logo, .footer_hij2016 #copyright {
      display: inline-block;
    }
    /*///////////////////////////////////////////////////////////////////////
        FORM                                                               */
    /* ==================================================================
        入力パーツ                                             		     */
    input[type="text"], input[type="number"], textarea, select, label {
			display: block;
      width: 100%;
      height: 100%;
      padding: 1em 0.6em;
      outline: 0;
      border: var(--color-common-gray) var(--border-solid-medium)
    }
    select {
      margin-right: 2em;
			padding: 1em 0.6em;
    }
		@media all and (min-width:768px) {
      input[type="text"], input[type="number"], textarea, select, label {
        padding: 0.7em 0.6em;
      }
      select {
				padding: 0.75em 0.6em;
      }
    }
    /*--	フォームタイプ__basic
    ----------------------------------------------------*/
    /* .type-basic .formTable [type="text"], .type-basic .formTable [type="number"], .type-basic .formTable textarea, .type-basic .formTable select {
      border-width: 2px;
      border-radius: var(--border-corner-radius)
    } */
    input::placeholder {
      color: var(--color-common-dkGray);
    }
    input:disabled {
      background-color: var(--color-common-ltGray) !important;
      border-color: var(--color-common-gray)
    }
    input[type="text"]:focus, input[type="number"]:focus, textarea:focus, select:focus {
      box-shadow: var(--shadow-center);
    }
    input:focus, textarea:focus {
      background-color: var(--color-common-white) !important;
      border-color: var(--color-error-font);
    }
    /* ==================================================================
        テーブル														*/
    .formTable tr {
      border: var(--border-common-style);
      background-color: var(--color-common-white);
    }
    .formTable tr.bd-none {
      border-top: none;
      border-bottom: none;
    }
    .formTable th, .formTable td {
      display: block;
      width: 100%;
      padding: 1.5em;
    }
		.formTable th p, .formTable td p {
			line-height: 1.5;
    }
    .formTable td {
      padding: 0 1.5em 1.5em 1.5em;
    }
		.default .formTable {
      margin-bottom: 3em;
    }
		.default .formTable p.input-mark + div.check-wrapper {
      margin-top: 1em;
    }
    @media all and (min-width:768px) {
      .formTable th, .formTable td {
        width: auto;
        display: table-cell;
        padding: 1.5em;
        vertical-align: middle;
      }
      .formTable th {
        width: 250px;
      }
    }
    /*--	フォームタイプ__basic
    ----------------------------------------------------*/
    /* .type-basic .formTable th {
      background-color: var(--color-form-gray);
    }
    .type-basic .formTable th, .type-basic .formTable td {
      border: var(--border-common-style);
    } */
    /* ==================================================================
        テーブルInner													*/
    /* th */
    .formTable th .item-inner {
      display: flex;
	  align-items: center;
      width: 100%;
      text-align: left;
    }
    /* 項目名小文字 */
    .formTable th .item-inner span {
      font-weight: normal;
      font-size: 0.9em;
    }
.formTable th .item-inner span sup {
	vertical-align: super;
	font-size: 0.8em;
}
@media all and (min-width:768px) {
	.formTable th .item-inner .item-text {
	width:calc(100% - 3.5em);
}
}

    /* td */
    @media all and (min-width:768px) {
      .formTable .input-frame {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
      }
	  .formTable .input-frame-column {
        flex-direction: column;
      }
    }
    /* ==================================================================
        入力欄ラッパー													*/
    /* 共通 */
    .formTable .input-frame .input-wrapper {
      position: relative;
    }
    .formTable .input-frame .input-wrapper + .input-wrapper {
      margin: 0.5em 0 0 0;
    }
    @media all and (min-width:768px) {
			.formTable .input-frame .input-wrapper {
        width: 20em;
      }
			.formTable .input-frame-column .input-wrapper {
        width: 100%;
      }
      .formTable .input-frame .input-wrapper + .input-wrapper {
        margin: 0 0 0 0.5em;
      }
			.formTable .input-frame-column .input-wrapper + .input-wrapper {
				margin: 0.5em 0 0 0;
      }
    }
    .formTable .input-frame .tel-wrapper {
      display: inline-block;
    }
    /* チェック・ラジオ */
    .formTable .input-frame .check-wrapper + .check-wrapper {
      margin-top: 1em;
    }
    .formTable .input-frame .check-wrapper label > span {
      margin-left: 0.5em;
    }
    /* セレクト */
    @media all and (min-width:768px) {
      /* .formTable .input-frame .select-wrapper {
        min-width: 180px;
      } */
    }
    .formTable .select-wrapper::before {
      content: "";
      display: inline-block;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      width: 2em;
      height: 100%;
      background-color: var(--color-common-dkGray);
      pointer-events: none;
    }
    .formTable .select-wrapper::after {
      display: inline-block;
      content: "";
      position: absolute;
      top: 0;
      right: 0.6em;
      bottom: 0;
      margin: auto;
      width: 10px;
      height: 8px;
      transform: rotate(180deg);
      -webkit-clip-path: var(--icon-triangle-top);
      clip-path: var(--icon-triangle-top);
      background-color: var(--color-common-white);
      pointer-events: none;
    }
    /* カレンダー */
		.formTable input.datepicker::placeholder {
      color: var(--color-common-black);
    }
		.ui-datepicker td span, .ui-datepicker td a {
			padding: .5em .3em !important;
		}
		/* 個別設定 */
		.formTable .preferred-wrapper + .preferred-wrapper {
			margin-top: 1em;
		}
		.formTable .input-people .input-wrapper {
			width: 4em;
		}
		.formTable .input100 .input-wrapper {
			width: 100%;
		}
		@media all and (min-width:768px) {

    }
    /*--	フォームタイプ__basic
    ----------------------------------------------------*/
    /* .type-basic .formTable .select-wrapper::before {
      width: 2px;
      right: 1.5em;
      background-color: var(--color-common-gray);
    }
    .type-basic .formTable .select-wrapper::after {
      right: 0.5em;
      background-color: var(--color-common-dkGray)
    }
    /* 住所 */
    .formTable .input-frame .addr1-wrapper, .formTable .input-frame .addr2-wrapper {
      width: 492px;
    } */
    /* カレンダー */
    /* .formTable .input-frame .calendar-wrapper {
      width: calc(90% / 2);
    }
    .formTable .input-frame .calendar-wrapper:first-of-type {
      margin-right: 5px;
    } */
    /* 「その他」入力欄 */
    .nest-inputMark-wrapper {
      margin: 0.5em 0 0;
    }
    @media all and (min-width:768px) {
      .nest-inputMark-wrapper {
        display: flex;
        margin: 0.5em 0 0;
      }
    }
    /* ==================================================================
        必須アイコン													*/
    span.icon-required, span.icon-complete {
      margin: 0 0.5em;
    }
    span.icon-required {
      display: inline-block;
      width: 3.5em;
	　height: 2em;
      padding: 0.5em 0;
      text-align: center;
      vertical-align: middle;
      font-weight: bold !important;
      font-size: 10px !important;
      background-color: var(--color-common-orange);
      color: var(--color-common-white);
    }
    span.icon-required.is-complete {
      background-color: var(--color-common-dkGray);
      color: var(--color-common-white);
    }
    .formTable th span.icon-required, .formTable th span.icon-complete {
      margin: 0 0 0 auto;
    }
    /*--	フォームタイプ__basic
    ----------------------------------------------------*/
    /* .type-basic span.icon-required {
      line-height: 1.5em;
      border-radius: var(--border-corner-radius);
      border: currentColor var(--border-solid-medium);
      background-color: var(--color-common-white);
      color: var(--color-common-orange);
    }
    .type-basic span.icon-required.is-complete {
      border: currentColor var(--border-solid-medium);
      color: var(--color-common-dkGray);
    } */
    /* ==================================================================
        注釈															*/
    .formTable .input-frame .input-mark {
      display: inline-block;
      margin: 0.2em;
      color: var(--color-common-dkGray);
    }
    .formTable .input-frame p.input-notes {
      display: block;
      width: 100%;
      line-height: 1.5;
      color: var(--color-common-dkGray);
    }
		.formTable .input-frame .input-wrapper + p.input-notes {
			margin-top: 0.5em;
		}
		.input-mark {
			padding-left: 1em;
			text-indent: -1em;
		}
    @media all and (min-width:768px) {
      .formTable .question05 .input-frame .input-mark {
        max-width: 70%;
      }
			.formTable .input-frame p.input-notes {
				margin-top: 0.5em;
			}
    }
    /* ==================================================================
        エラー															*/
    .wrap-warning {
      color: var(--color-error-font);
      background-color: var(--color-error-bg);
    }
    .formTable .js-error-alert {
      display: none;
      width: 100%;
      margin: 1em 0 0.5em;
    }
    .formTable .text-errMsg {
      display: flex;
      align-items: center;
      font-weight: bold;
      color: var(--color-error-font);
    }
    .formTable .text-errMsg::before {
      content: "!";
      display: block;
      margin-right: 4px;
      height: 1.5em;
      width: 1.5em;
      border-radius: 50%;
      font-weight: bold;
      text-align: center;
      color: var(--color-common-white);
      background-color: var(--color-error-font);
    }
    /* ==================================================================
        確認画面            	                                        */
    #area-form-conf {
      margin-bottom: 16px;
    }
    #area-form-conf .formTable .line {
      display: flex;
    }
    #area-form-conf .formTable .line span {
      margin-right: 0.25em;
    }
    /* ==================================================================
        完了画面            	                                        */
    #area-form-comp {
      margin: 5em auto;
}


/* モーダル
------------------------------------------------------------------------------------ */
.modal-container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	background: rgba(var(--rbg-common-black) / 50%);
	padding: 1.5em;
	opacity: 0;
	z-index: 999;
	visibility: hidden;
	overflow: scroll;
	transition: .3s;
  box-sizing: border-box;
}
/*モーダル本体の擬似要素の指定*/
.modal-container:before{
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}
/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active{
	opacity: 1;
	visibility: visible;
}
/*モーダル枠の指定*/
.modal-body{
	position: relative;
	display: inline-block;
	vertical-align: middle;
	max-width: var(--width-size-content);
	width: 90%;
  border: var(--color-error-font) solid 2px;
}
/*モーダル内のコンテンツの指定*/
.modal-content{
	background: var(--color-common-white);
	text-align: center;
	padding: 1.5em;
}
.modal-inner {
  color: var(--color-error-font);
  font-size: 1.5em;
	margin: 1em 0;
}
@media (max-width:1000px) {
	.modal-container {
		padding: 0;
	}
	.modal-container:before{
    height: 35vh;
		display: block;
	}
}