@charset "UTF-8";
/* #form
-------------------------------------------------------------------------- */
.p-form { padding: 0 1.5em; }
.p-form__inner { width: 100%; margin: 0 auto; padding: 2em 0 0; display: flex; justify-content: space-between; align-content: flex-start; flex-wrap: wrap; }
.p-form__finish { padding: 2em 0 0; }
.p-form__finish .c-txtBlock__m, .p-form__finish .c-txtBlock__l, .p-form__finish .c-txtBlock__s { margin-bottom: 2em; }
.p-formL { width: 100%; }
.p-formR { background: #fff; overflow: auto; width: 100%; border: solid 1px #ccc; height: 200px; text-align: left; margin-bottom: 2em; margin-top: 2em; }
.p-formR p { padding: 5px 15px; }
.p-formList { border-collapse: collapse; margin: 0 auto 20px; width: 100%; text-align: left; }
.p-formList--confirm { margin: 2em auto; }
.p-formList label { display: block; margin-right: 15px; cursor: pointer; }
.p-formList dl { width: 100%; display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 1em; }
.p-formList--confirm dl { border-bottom: 1px solid #dddddd; padding: 1em; margin-bottom: 0; }
.p-formList--confirm dl:first-of-type { border-top: 1px solid #dddddd; }
.p-formList dt { background-color: #fff; padding: 5px 0; position: relative; text-align: left; vertical-align: middle; width: 100%; font-weight: bold; }
.p-formList dt.val-top { align-self: flex-start; }
.p-formList dd { background-color: #fff; padding: 10px 0; width: auto; flex: 1; margin: 0; }
.p-formList dt span { background: #b8a53c; color: #fff; display: inline-block; padding: 3px 5px; position: absolute; right: 0; top: 5px; border-radius: 5px; font-size: 1.4rem; }
.p-formList dt span.c-any { background: #666; }
input[type='text'], textarea ,input[type='file'] { -webkit-appearance: none; -moz-appearance: none; appearance: none; resize: none; padding: 0; border: 0; outline: none; background: transparent; }
input[type='text'], textarea ,input[type='file'] { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; font-size: 1.6rem; margin-right: 10px; padding: 10px 10px; background: #f3f3f3; }
input[type='radio'] { display: none; }
input[type='radio'] + label { padding-left: 30px; position: relative; margin-right: 20px; line-height: 1.4; padding-bottom: 10px; }
input[type='radio'] + label::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 20px; height: 20px; border: 1px solid #ddd; border-radius: 50%; background: #f3f3f3; }
input[type='radio']:checked + label::after { content: ""; display: block; position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; background: #b8a53c; border-radius: 50%; }
.p-formBtns { display: block; }
#submit_btn { margin: 0 auto; cursor: pointer; padding: 1em 0 1.3em; text-align: center; font-family: 'icomoon',-apple-system, BlinkMacSystemFont, Roboto, "游ゴシック体", YuGothic, "Yu Gothic Medium", sans-serif; }
#submit_btn:disabled { cursor: not-allowed; }
.p-formBtns #submit_btn { margin: 0 auto 1em; }
.p-form__flow { display: table; width: 100%; max-width: 600px; margin: 0 auto 1em; overflow: hidden; }
.p-form__flow li { display: table-cell; position: relative; background: #504944; padding: .5em 0.5em .5em 2em; color: #fff; }
.p-form__flow li:last-child { padding-right: 1em; }
.p-form__flow li:after { content: ""; position: absolute; width: 0; height: 0; top: 0; right: -10px; border-style: solid; border-color: #b8a53c transparent transparent transparent; border-width: 10px 50px 0 50px; z-index: 1; }
.p-form__flow li:last-child:before, .p-form__flow li:last-child:after { display: none; }
.p-form__flow li:before, .p-form__flow li:after { content: ""; position: absolute; width: 0; height: 0; margin: auto; }
.p-form__flow li:before { margin-top: -40px; top: 50%; right: -1em; border-style: solid; border-color: transparent transparent transparent #fff; border-width: 40px 0 40px 1em; z-index: 10; }
.p-form__flow li:after { margin-top: -40px; top: 50%; right: -.9em; border-style: solid; border-color: transparent transparent transparent #504944; border-width: 40px 0 40px 1em; z-index: 10; }
.p-form__flow li.is-current { background: #b8a53c; color: #fff; font-weight: 700; }
.p-form__flow li.is-current:after { border-color: transparent transparent transparent #b8a53c; }
.p-form__caption img { width: 100%; }
.p-form__input--sizeS { width: 120px; }
.p-form__input--sizeM { width: 180px; }
.p-form__input--sizeL { width: 100%; }
.p-form__err { color: #cc0000; font-weight: 700; margin: 5px 0 0; }
.p-form__privacyCaption { border-bottom: #ccc solid 1px; font-weight: 700; }
@media print, screen and (min-width: 768px) { .p-formBtns { display: flex; justify-content: center; flex-direction: row-reverse; }
  .p-form__flow { text-align: center; }
  .p-formList dt { width: 30%; padding: 10px; margin-right: 2em; align-self: center; }
  .p-formList dd { padding: 5px 0; }
  .p-formList--confirm dd { padding: 10px 0 0; }
  .p-formList dt span { right: 10px; top: 13px; }
  .p-form__input--sizeS { width: 120px; }
  .p-form__input--sizeM { width: 180px; }
  .p-form__input--sizeL { width: 100%; }
  #submit_btn { padding: 1em 0; }
  .p-formBtns #submit_btn { padding: 1em 0; margin: 0 .5em; } }
