/* フォームリセット */
div.form {
  margin: 0;
  background-color:#fff;
}
div.form .wrapper {
  width: auto;
  margin: 0;
}
#lf_form_submit_button,
#lf_form_div #frm_formthanks .button_area input,
.form div#lf_form_div .button_area #button_confirm_back,
.form div#lf_form_div .button_area #button_confirm_submit{
  -webkit-appearance: none !important;
}
.form div#lf_form_div div,
.form div#lf_form_div table,
.form div#lf_form_div tr,
.form div#lf_form_div td,
.form div#lf_form_div p,
.form div#lf_form_div span,
.form div#lf_form_div input,
.form div#lf_form_div select {
  border: initial !important;
  font-size: 14px !important;
  color: initial !important;
  background: initial !important;
  outline: none;
  font-weight: initial !important;
  -moz-box-sizing: border-box !important;
  -webkit-box-sizing: border-box;
  box-sizing: border-box !important;
}
.form div#lf_form_div div,
.form div#lf_form_div select,
.form div#lf_form_div section,
.form div#lf_form_div textarea,
.form div#lf_form_div input,
.form .readme,
.form #privacy {
  -moz-box-sizing: border-box !important;
  -webkit-box-sizing: border-box;
  box-sizing: border-box !important;
}
.form div#lf_form_div textarea {
  display: block;
}
.form div#lf_form_div h2 {
  font-size: 21px !important;
}
/* コンテンツスタイル */
.container .wrapper {
  margin: 0;
  width: 550px;
}
.form {
  background: initial !important;
  text-align: left !important;
  line-height: 1.6 !important;
  font-family: Noto Sans JP, Meiryo, メイリオ, lucida grande,
    hiragino kaku gothic pron, ヒラギノ角ゴ pron w3, sans-serif !important;
  font-size: 14px !important;
  color: #333 !important;
}
/* ヘッダー */
#globalHead {
  background-color: #ffffff;
}
.form .header {
  position: relative !important;
  min-width: 1300px;
  margin: 0px auto 15px !important;
  text-align: center !important;
}
.form .header .header__inner {
  position: relative;
  min-width: 1200px;
  margin: 0 auto;
}
.form .header__logoLarge {
  width: 9% !important;
  height: auto;
}
/* フォームエリア */
.form .container .header {
  display: none;
}
.form main > .m-h1 {
  background-color: #eef9fb;
  margin-bottom: 1.5rem;
  width: 100%;
  min-width: 1300px;
}
.form div.m-h1__inner {
  box-sizing: border-box;
  margin: 0 auto !important;
  padding: 10px 0 !important;
  width: 1080px;
}
.form div.m-h1__inner h1 {
  padding-left: 0 !important;
  font-size: 16px !important;
  font-weight: bold;
  background: none !important;
}
.form div#lf_form_div {
  padding-top: 25px;
  margin: 0 auto !important;
}
.form div#lf_form_div a:hover {
  text-decoration: underline !important;
}
.form div#lf_form_div div.container {
  border: none !important;
  width: 100%;
}
.form div#lf_form_div div.message {
  color: #f00 !important;
  margin-bottom: 20px !important;
  line-height: 1.5rem !important;
  margin-left: 78px;
  padding-left: 0;
}
.form div#lf_form_div p.required_msg {
  display: none !important;
}
.form div#lf_form_div table {
  margin-bottom: 10px !important;
  border-collapse: initial;
  border-spacing: 1px;
  border: none;
  margin: 0 auto;
  width: 900px;
  table-layout: fixed;
}
.form .main.download-form div#lf_form_div table {
  width: 600px;
}
.form div#lf_form_div td {
  border-bottom: none;
}
.form div#lf_form_div tr.item td:nth-child(1) {
  background-color: #eee !important;
  font-weight: bold !important;
  margin-bottom: 3px !important;
  width: 180px !important;
  position: relative;
  padding: 15px 12px !important;
  border-radius: 0;
}
.form div#lf_form_div th,
.form div#lf_form_div td {
  padding: 11px 22px !important;
}
.form div#lf_form_div td.label {
  font-size: 12px !important;
  color:#000;
}
.form div#lf_form_div td.comment {
  display: none;
}
.form div#lf_form_div .required {
  background-color: #f89406 !important;
  display: inline-block !important;
  padding: 2px 6px;
  font-size: 0.6rem !important;
  color: #fff !important;
  text-shadow: none;
  white-space: nowrap;
  border-radius: 10px;
  float: none !important;
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translate(0, -50%);
  margin-right: 0;
}
.form div#lf_form_div td span.label_name {
  color: #000;
}
.form div#lf_form_div input[type="text"],
.form div#lf_form_div textarea {
  -webkit-appearance: none !important;
  border: 1px solid #ccc !important;
  border-radius: 4px;
  transition: border linear 0.2s, box-shadow linear 0.2s;
  padding: 5px !important;
  background-color: #fff !important;
  width: 100%;
  box-shadow: none;
}
.form .main.download-form div#lf_form_div input[type="text"],
.form .main.download-form div#lf_form_div textarea {
  width: 350px;
}
.form div#lf_form_div tr#item_6 textarea,
.form div#lf_form_div tr#item_7 textarea {
  width: 100%;
  height: 2.2rem;
}
.form .main.download-form div#lf_form_div tr#item_6 textarea,
.form .main.download-form div#lf_form_div tr#item_7 textarea {
  width: 350px;
}
.form div#lf_form_div input[type="text"]:focus:focus,
textarea:focus {
  border-color: #f89406 !important;
  transition: border linear 0.2s, box-shadow linear 0.2s;
}
.form div#lf_form_div tr#item_1 input[type="text"] {
  width: 180px;
  margin-right: 1rem !important;
}
.form .main.download-form div#lf_form_div tr#item_1 input[type="text"] {
  width: 350px;
}
.form div#lf_form_div tr#item_2 .value :nth-child(2) {
  margin-right: 15px;
}
.form div#lf_form_div .label_mail {
  margin-top: 0.5rem !important;
  font-size: 12px !important;
  color: #000 !important;
}
.form .main.download-form div#lf_form_div tr#item_2 input[type="text"] {
  width: 145px;
  min-width: auto;
}
.form div#lf_form_div tr#item_0 td:nth-child(2) {
  line-height: 2rem !important;
}
.form div#lf_form_div tr#item_0 td:nth-child(2) input {
  margin-left: 2rem !important;
}
.form div#lf_form_div tr#item_0 td:nth-child(2) input:first-child {
  margin-left: 0 !important;
}
.form div.privacy_policy {
  padding: 0 !important;
  margin-bottom: 10px !important;
}
/* ボタン */
.form div#lf_form_div .button_area input {
  width: 245px !important;
  padding: 9px 8px !important;
  border-radius: 10px;
  font-size: 15px !important;
  letter-spacing: 2px;
  color: #fff !important;
  margin-top: 7px;
}
.form div#lf_form_div .button_area input#lf_form_submit_button,
#lf_form_div #frm_formthanks .button_area input{
  background-color: #f08300!important;
}
.form div#lf_form_div .button_area input#button_confirm_back {
  background-color: #ccc !important;
}
.form div#lf_form_div .button_area input#button_confirm_submit {
  background-color: #f08300 !important;
}
.form div#lf_form_div #lf_form_submit_button:hover {
  opacity: 0.7 !important;
}
/* プライバシポリシー */
.form section.readme {
  padding-top: 10px !important;
  text-align: left;
  width: 1080px;
  margin: 0 auto !important;
}
.form section.readme h3 {
  font-weight: bold !important;
  font-size: 1.3rem !important;
}
.form section.readme h4 {
  font-weight: bold !important;
  font-size: 1.1rem !important;
}
.form section.readme div {
  border-radius: 5px !important;
  padding: 15px !important;
  margin: 15px 0 !important;
}
/* フッター */
.form section.readme div#privacy {
  background-color: #eee !important;
}
.footer {
  padding: 104px 0 40px;
  text-align: center;
}
/* お問い合わせフォーム「ご質問・要望」欄の余白調整 */
.form div#lf_form_div td.value {
  word-break: break-all;
  width: 604px !important;
  padding: 11px 0 13px 22px !important;
}
.form .main.download-form div#lf_form_div td.value {
  width: 372px !important;
}
.form div#lf_form_div tr#item_5 td.comment {
  padding: 0 !important;
}

@media screen and (max-width: 768px) {
  /* ヘッダー */
  .form .header {
    margin: 21px auto 8px !important;
    width: 100% !important;
    min-width: 300px;
  }
  .form .header .header__inner {
    position: relative;
    width: 100%;
    min-width: 300px;
  }
  .form .header__logoLarge {
    width: 172px !important;
    height: 41px !important;
  }
  /* タイトル */
  .form div.m-h1__inner {
    margin-bottom: 0 !important;
    width: 91%;
    min-width: 300px;
  }
  .form div.m-h1__inner h1 {
    font-size: 15px !important;
    padding: 0 !important;
  }
  .form main > .m-h1 {
    margin-bottom: 0.2rem;
    width: 100%;
    min-width: 300px;
  }
  /* フォーム */
  .form div#lf_form_div {
    padding-top: 0;
    width: 100%;
  }
  .form div#lf_form_div input[type="text"],
  .form div#lf_form_div tr#item_7 textarea,
  .form div#lf_form_div tr#item_6 textarea {
    height: 1.7rem;
    width: 97% !important;
    min-width: 300px;
  }
  .form div#lf_form_div tr#item_3 td:nth-child(2) {
    padding-bottom: 6px !important;
  }
  .form div#lf_form_div table {
    width: 100%;
  }
  .form div#lf_form_div td {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block !important;
    width: 100% !important;
  }
  .form div#lf_form_div td.label {
    font-size: 26px !important;
    height: auto;
  }
  .form div#lf_form_div tr.item td:nth-child(1) {
    border-right: none !important;
    border-bottom: none !important;
    width: 100% !important;
    padding: 9px 10px !important;
    margin-bottom: 11px !important;
    font-size: calc(0.75rem + ((1vw - 3.75px) * 2.5974)) !important;
    border-radius: inherit;
  }
  .form div#lf_form_div tr.item td:nth-child(2) {
    border-bottom: none !important;
    padding: 0 15px 10px 23px !important;
    min-width: 300px;
    width: 100% !important;
  }
  .form div#lf_form_div tr.item td:last-child p {
    font-size: 16px !important;
    padding: 10px 0 !important;
  }
  .form div#lf_form_div th,
  .form div#lf_form_div td {
    padding-bottom: 8px !important;
    padding-top: 8px !important;
    font-size: 13px !important;
  }
  .form div#lf_form_div .required {
    margin-left: 0.5rem !important;
    padding: 0 0.5% !important;
    font-size: calc(0.6875rem + ((1vw - 3.6px) * 1.25)) !important;
    position: static;
    transform: inherit;
  }
  .form div#lf_form_div tr#item_1 input[type="text"] {
    width: calc(100% - 10px) !important;
    display: inline-block;
    margin-right: 0 !important;
    min-width: 300px !important;
    height: 1.7rem;
  }
  .form div#lf_form_div tr#item_2 input[type="text"]:not(:last-child) {
    margin-bottom: 20px !important;
    margin-right: 0;
    margin: 3px 0 20px;
  }
  .form div#lf_form_div tr#item_2 span.label_name {
    margin-top: 1px;
  }
  .form div#lf_form_div tr#item_1 span.label_name {
    display: inline-block !important;
    vertical-align: super;
  }
  .form div#lf_form_div tr#item_0 td:nth-child(2) input {
    margin-left: 0 !important;
  }
  .form div#lf_form_div tr#item_0 td:nth-child(2) br {
    display: initial !important;
  }
  .form div#lf_form_div td.value {
    padding-top: 4px !important;
    padding-left: 25px !important;
    padding-right: 25px !important;
  }
  .form div#lf_form_div td.comment {
    display: none !important;
  }
  .form div#lf_form_div tr#item_2 input[type="text"] {
    width: 94% !important;
  }
  .form div#lf_form_div .label_mail {
    font-size: calc(0.875rem + ((1vw - 3.75px) * 1.039)) !important;
  }
  .form div#lf_form_div tr#item_1 input[type="text"]:not(:last-child) {
    margin-bottom: 1rem !important;
  }
  /* ボタン */
  .form div#lf_form_div .button_area {
    padding: 0 21px;
    width: 100% !important;
  }
  .form div#lf_form_div .button_area input {
    font-size: 17px !important;
    margin-top: 30px;
    padding: 16px !important;
    width: 96% !important;
  }
  .form div#lf_form_div .button_area input#lf_form_submit_button {
    padding: 14px 0 15px !important;
    font-size: 16px !important;
    width: 100% !important;
  }
  /* プライバシポリシー */
  .form div#lf_form_div div.privacy_policy {
    font-size: 12px !important;
    margin: 0 0 10px !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
    width: initial !important;
  }
  .form section.readme {
    font-size: 13px !important;
    width: 100% !important;
    padding: 0 15px !important;
  }
  .form section.readme h3 {
    font-size: 1rem !important;
  }
  .form section.readme div {
    width: 100% !important;
    margin: 1rem 0 0 0 !important;
    padding: 6px !important;
  }
  .form section.readme h4 {
    font-size: 15px !important;
  }
  .form div#lf_form_div .button_area input#button_confirm_back {
    width: 40% !important;
  }
  .form div#lf_form_div .button_area input#button_confirm_submit {
    width: 40% !important;
  }
  /* フッター */
  .form .footer {
    margin-bottom: 1rem !important;
    width: 100%;
    font-size: 12px;
    min-width: 300px;
    padding: 35px 0 18px;
  }
  .form td.value,
  .form td.label,
  .form td.comment {
    float: none;
    margin: 0;
  }
  /* お問い合わせフォーム「ご質問・要望」欄の余白調整 */
  .form div#lf_form_div td.value {
    width: 100%;
  }
}
/* 2020/3のデザインに合わせて、もともとあった要素を消しています。 */
#lf_form_div .footer {
  display: none;
}
.container #privacy_policy {
  display: none;
}
.container div:nth-child(9) {
  display: none;
}
.form div#lf_form_div tr#item_0 td:nth-child(2) br {
  display: none !important;
}
.container br {
  display: none;
}
/*  確認画面のボタン下の「必ずご一読」*/
.notes {
  width: 538px;
  margin: 23px auto;
}
.notes__title {
  font-size: 20px;
  font-weight: bold;
}
.notes__contents {
  background-color: #eee;
  padding: 21px 16px 7px;
  margin-top: 15px;
  line-height: 1.75;
  border-radius: 5px;
}
.notes__subTitle {
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 3px;
}
.notes__text {
  line-height: 1.7;
}
@media screen and (max-width: 767px) {
  .notes__title {
    font-size: calc(0.9375rem + ((1vw - 3.75px) * 0.7792));
    letter-spacing: 1px;
  }
  .notes__subTitle {
    font-size: calc(0.9375rem + ((1vw - 3.75px) * 0.7792));
  }
  .note__contents {
    font-size: calc(0.8125rem + ((1vw - 3.6px) * 1.75));
    width: 95%;
  }
}
/*
/* ダウンロードページ ----------------------------------------------*/
div.download .wrapper {
  margin: 0;
  width: auto;
}
.download {
  display: flex;
  width: 1080px;
  margin: 0 auto;
}
.download__description {
  margin: 26px 31px 0 0;
  width: 46%;
}
.download__thumbnail {
  width: 56%;
  margin: 0 auto;
}
.download__img {
  display: block;
  width: 100%;
  margin: 0 auto;
}
.download__form {
  width: 558px;
}
.download__title {
  margin-top: 6px;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
}
.download__details {
  margin-top: 6px;
  margin-bottom: 20px;
  line-height: 1.9;
}
.download_details_box {
  border: 1px solid #ccc;
  padding: 25px 15px;
  margin-bottom: 50px;
  border-radius: 10px;
  line-height: 1.9;
}
@media screen and (max-width: 767px) {
  .download {
    display: block;
    width: 100%;
    min-width: 300px;
    margin: 24px auto 0;
  }
  .download__thumbnail {
    width: 55%;
  }
  .download__title {
    font-size: calc(1.125rem + ((1vw - 3.75px) * 2.5974));
    margin-top: 20px;
  }
  .download__details {
    margin-top: 7px;
    font-size: calc(0.9375rem + ((1vw - 3.6px) * 1.75));
  }
  .download__form {
    margin: 0 auto;
    width: 100%;
    min-width: 300px;
  }
  .download__description {
    margin: 0 auto;
    width: 93%;
    min-width: 300px;
  }
  .notes {
    width: 93%;
  }
  .notes__contents {
    padding: 8px 6px;
  }
  .notes__text {
    font-size: 12px;
  }
  .download_details_box {
    font-size: calc(0.9375rem + ((1vw - 3.6px) * 1.75));
  }
}
