@charset "utf-8";

/*---------------------------------------------
株式の状況・配当金推移
---------------------------------------------*/
.form .unitA03 { padding: 20px; }
.form .unitA03 .title { padding-bottom: 15px; font-family: 'Noto Sans JP', sans-serif; color: #000; font-size: 2.2rem; }
.form .unitA03 ul.basic { margin-top: 0; }
.form .table-default th { vertical-align: top; position: relative; }
.form .required { background:#bc001f; color: #fff; font-size: 1.4rem; padding: 0 7px; float: right; }
.form .table-default th:after { content: ""; display: block; clear: both; height: 0; }
.form input[type="text"]:focus,
.form input[type="checkbox"]:focus,
.form select:focus,
.form textarea:focus,
.form input[type="submit"]:focus { outline: 0; }
.form select,
.form textarea,
.form input[type="text"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 1px solid #cccccc; outline: none; }
.form input[type="text"],
.form textarea,
.form select { padding: 5px 30px 5px 10px; }
.form input[type="text"] { width: 500px; }
.form textarea { width: 700px; }
.form .table-default td p,
.form .table-default td div { width: 100%; }
.form .table-default td div + div { margin-top: 10px; }
.form .table-default td label { margin-right: 10px; }
.form .table-default td.name input[type="text"] { display: inline-block; }
.form .table-default td.name input[type="text"] { width: 300px; margin-right: 20px; }
.form .table-default td.cms-form-name input[type="text"] { display: inline-block; }
.form .table-default td.cms-form-name input[type="text"] { width: 200px; margin-right: 20px; }
.form .table-default td.name .maiden_name { margin-top: 15px; }
.form .table-default td.name .maiden_name input[type="text"] { width: 285px; }
.form .table-default td #year { width: 15%; margin-right: 10px; }
.form select::-ms-expand { display: none; }
.form .select-wrap { position: relative; }
.form .select-wrap:after { content: ""; position: absolute; top: 7px; right: 12px; width: 0; height: 0; border-style: solid; border-width: 10px 5px 0 5px; border-color: #999999 transparent transparent transparent; pointer-events: none; }
.form input[type="checkbox"],
.form input[type="radio"] { visibility: hidden; width: 0; }

.form label.checkbox,
.form label.radio { position: relative; display: inline-block; padding: 5px 3px 3px 40px; cursor: pointer; }

.form label.checkbox::before,
.form label.checkbox::after,
.form label.radio::before,
.form label.radio::after { position: absolute; content: ''; top: 0; bottom: 0; -webkit-transition: all .1s; transition: all .1s; }

.form label.checkbox::before,
.form label.radio::before { border-radius: 100%; left: 0; width: 25px; height: 25px; margin-top: 3px; background: #ffffff; border: 1px solid #ccc; }

.form label.checkbox.error::before { background: #fff7f7; border: 1px solid #ff5353; }

.form label.checkbox:hover::before { background: #fff; }

.form label.checkbox::after { opacity: 0; width: 6px; height: 10px; top: 9px; left: 9px; border-bottom: 2px solid #ffffff; border-right: 2px solid #ffffff; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }

.form label.radio::after { opacity: 0; background: #3eb134; width: 19px; height: 19px;
  top: 8px; left: 5px; border-radius: 50%;
}
.form input[type="checkbox"]:checked + label.checkbox::before,
.form input[type="radio"]:checked + label.checkbox::before{ background: #3eb134; border: 1px solid #3eb134; }

.form input[type="radio"]:checked + label.radio::before{ background: #fff; border: 2px solid #3eb134; }

.form input[type="checkbox"]:checked + label::after,
.form input[type="radio"]:checked + label::after{ opacity: 1; }
.form .other-text { margin: 0 0 0 35px; }
.form .other-text input[type="text"] { width: 465px; }
.form .table-default td.gender div { display: inline-block; width: auto; margin-top: 0;  }
.form .table-default td.gender label { margin-right: 40px; }
.form .lead { font-family: 'Noto Sans JP', sans-serif; color: #000; font-size: 1.8rem; margin-bottom: 20px; }
.form .table-default td .opinion { display: flex; justify-content: center; align-items: center; width: 550px; margin: 30px 0; }
.form .table-default td .opinion div { width: 33%; text-align: center; margin-top: 0; padding-bottom: 30px; border-left: 1px solid #cccccc; }
.form .table-default td .opinion div:nth-child(3n) { border-right: 1px solid #cccccc; }
.form .table-default td .opinion label { width: 100%; padding: 3px; }
.form .opinion label.checkbox::before,
.form .opinion label.checkbox::after { top: 35px; left: 50%; margin-left: -10px; }
.form .opinion label.checkbox::before {}
.form .opinion label.checkbox::after { top: 43px; margin-left: -1px; }
.form button { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 0; outline: none; cursor: pointer; transition: 0.3s; }
.form .btnarea { display: flex; justify-content: center; margin-top: 60px; }
.form .btnarea button { margin-right: 30px; }
.form .btnarea button:last-of-type { margin-right: 0; }
.form button:after { content: ""; position: absolute; top: 50%; right: 15px; width: 8px; height: 8px; margin-top: -5px; border-top: 1px solid #fff; border-right: 1px solid #fff; transform: rotate(45deg);
}
.form .btn-prev { display: inline-block; position: relative; width: 250px; height: 50px; padding: 13px 0; border-radius: 25px; background: linear-gradient(to right, #5cce52 0%, #17ba60 100%); color: #fff; font-family: 'Noto Sans JP', sans-serif; font-size: 1.8rem;
 font-weight: 500; line-height: 1.25; box-shadow: 5px 5px 10px rgba(35, 24, 21, .2); }
.form .btn-prev:after { right: auto; left: 15px; transform: rotate(-135deg); }
.form .btn-conv { display: inline-block; position: relative; width: 250px; height: 50px; padding: 13px 0; border-radius: 25px; background: linear-gradient(to right, #e98900 0%, #e16a1b 100%); color: #fff; font-family: 'Noto Sans JP', sans-serif; font-size: 1.8rem; font-weight: 500; line-height: 1.25; box-shadow: 5px 5px 10px rgba(35, 24, 21, .2);
} 
.form .btn-prev:hover,
.form .btn-conv:hover { opacity: 0.6;}
.accordion th a { display: block; text-decoration: none; }
.accordion th a:before,
.accordion th a:after { content: ""; display: block; position: absolute; top: 50%; right: 30px; width: 20px; height: 2px; margin-top: 0; border: 0; background-color: #000; transition: .3s; }
.accordion th a:before { transform: rotate(-90deg); }
.accordion th a:after { transform: rotate(0); }
.accordion th.open a:before { transform: rotate(0deg); }
.accordion th.open a:after { background-color: transparent; }
.accordion div.disabled { display: none; }
.checkModal { display: none; position: fixed; z-index: 1; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0, 0, 0, 0.4); }
.checkModal-content { background-color: #fefefe; margin: 15% auto; padding: 20px; border: 1px solid #888; width: 80%; max-width: 350px; border-radius: 30px; }
.checkModal-buttons { display: flex; justify-content: space-around; }
.btn-yes { display: inline-block; position: relative; width: 250px; height: 50px; padding: 13px 0; border-radius: 25px; background: linear-gradient(to right, #e98900 0%, #e16a1b 100%); color: #fff; font-family: 'Noto Sans JP', sans-serif; font-size: 1.8rem; font-weight: 500; line-height: 1.25; box-shadow: 5px 5px 10px rgba(35, 24, 21, .2); }
.btn-no { display: inline-block; position: relative; width: 250px; height: 50px; padding: 13px 0; border-radius: 25px; background: linear-gradient(to right, #5cce52 0%, #17ba60 100%); color: #fff; font-family: 'Noto Sans JP', sans-serif; font-size: 1.8rem; font-weight: 500; line-height: 1.25; box-shadow: 5px 5px 10px rgba(35, 24, 21, .2) }
.form .btn-no::after { right: auto; left: 15px; transform: rotate(-135deg); }

@media (max-width: 767px) {
  .form .table-default th, .table-default td { display: block; width: 100%; }
  .form .table-default th:first-of-type { border-right: 0; }
  .form input[type="text"],
  .form textarea { width: 100%; font-size: 1.6rem; }
  .form .table-default td.name input[type="text"] { width: 100%; margin:0 0 10px 0; }
  .form .table-default td.name input[type="text"]:last-child { width: 100%; }
  .form .table-default td.cms-form-name input[type="text"] { width: 100%; margin:0 0 10px 0; }
  .form .table-default td.cms-form-name input[type="text"]:last-child { width: 100%; }
  .form .table-default td.name .maiden_name { margin-top: 5px; }
  .form .table-default td.name .maiden_name input[type="text"] { width: 86%; }
  .form .table-default td #year { width: 115px; margin-bottom: 10px; }
  .form .other-text { margin: 0; }
  .form .other-text input[type="text"] { width: 100%; }
  .form .table-default td .opinion { display: block; width: auto; border-top: 1px solid #cccccc; }
  .form .table-default td .opinion div { width: auto; border-left: 0; border-bottom: 1px solid #cccccc; padding: 25px 0 50px; }
  .form .table-default td .opinion div:nth-child(3n) { border-right: 0; }
  .form .btnarea { display: block; text-align: center; }
  .form .btnarea button { margin-right: 0; }
  .form .btnarea button + button { margin-top: 20px; }
}
