@charset "utf-8";

body {
 font-family: meiryo, 'MS PGothic', 'Hiragino Kaku Gothic Pro', sans-serif;
 -webkit-text-size-adjust: 100%;
}
body, div, p, form, input, textarea, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, table, th, td {
 margin: 0;
 padding: 0;
}
input, textarea, select {
 font-size: 0.9em;
 line-height: 1.0em;
 padding: 2px;
 margin: 0px 0px 0px 0px;
 font-family: monospace;
}
input[type="file"] {
 width: 100%;
}
p {
 font-size: 1.0em;
 font-weight: normal;
 font-style: normal;
 line-height: 1.4em;
}
th {
 white-space: normal;
 text-align: left;
 font-weight: normal
}
li {
 list-style-type: none;
}
button {
 padding: 3px;
}
label {
 cursor: pointer;
}
body {
 background-color: #FFFFFF;
}
.comform-wrap {
 box-sizing: border-box;
 position: relative;
 margin: 8px auto 8px auto;
 overflow: auto;
 margin-top: 8px;
 margin-bottom: 8px;
 max-width: 620px;
 border: 1px solid #FFFFFF;
 background-color: #FFFFFF;
 padding: 4px 4px 0px 4px;
}
.comform-title {
 text-align: center;
 max-width: auto;
 font-size: 16px;
 line-height: 1.6em;
 color: #FFFFFF;
 background-color: #ABABAB;
 border: 1px solid #AAAAAA;
 font-weight: bold;
 padding: 6px 6px 6px 6px;
 margin: 8px auto 16px auto;
 margin-top: 8px;
 margin-bottom: 16px;
}
.comform-title2 {
 text-align: left;
 max-width: auto;
 font-size: 30px;
 line-height: 1.6em;
 color: #000000;

 font-weight: bold;
 padding: 6px 6px 6px 6px;
 margin: 8px auto 16px auto;
 margin-top: 8px;
 margin-bottom: 16px;
}
.comform-title3 {
 text-align: left;
 max-width: auto;
 font-size: 16px;
 line-height: 1.6em;
 color: #000000;
 background-color: #dcdcdc;
 border: 1px solid #AAAAAA;
 font-weight: bold;
 padding: 6px 6px 6px 6px;
 margin: 8px auto 16px auto;
 margin-top: 8px;
 margin-bottom: 16px;
}
.comform-title4 {
 text-align: left;
 max-width: auto;
 font-size: 18px;
 line-height: 1.6em;
 color: #000000;
 font-weight: lighter;
 padding: 6px 6px 6px 6px;
 margin: 8px auto 16px auto;
 margin-top: 8px;
 margin-bottom: 16px;
}
.comform-title5 {
 text-align: left;
 max-width: auto;
 font-size: 16px;
 line-height: 1.6em;
 color: #000000;
 font-weight: bold;
 background-color: #fff8dc;
 padding: 6px 6px 6px 6px;
 margin: 8px auto 16px auto;
 margin-top: 8px;
 margin-bottom: 16px;
}

.comform-container {
 box-sizing: border-box;
 border-top: 1px solid #CCCCCC;
 border-left: 1px solid #CCCCCC;
}
.comform-row {
 table-layout: fixed;
 display: table;
 width: 100%;
}
.comform-row .itemTitle {
 display: table-cell;
 width: 30%;
 vertical-align: top;
 padding: 10px 10px 10px 10px;
 line-height: 1.6;
 font-size: 15px;
 color: #555555;
 background-color: #EEEEEE;
 border: 0;
 border-right: 1px solid #CCCCCC;
 border-bottom: 1px solid #CCCCCC;
 box-sizing: border-box;
}
.comform-row .itemInput {
 display: table-cell;
 width: 70%;
 vertical-align: text-top;
 font-size: 15px;
 line-height: 1.6;
 color: #555555;
 background-color: #FFFFFF;
 padding: 10px 10px 10px 10px;
 border: 0;
 border-right: 1px solid #CCCCCC;
 border-bottom: 1px solid #CCCCCC;
 box-sizing: border-box;
}
.itemInput.itemComment {
 overflow-wrap: break-word;
}
.itemInput input[type="text"], .itemInput input[type="email"], .itemInput input[type="password"], .itemInput textarea, .itemInput select {
 font-size: 0.95em;
 font-family: -apple-system, BlinkMacSystemFont, monospace;
 line-height: 1.6;
 padding: 4px 8px 4px 8px;
 margin: 2px 0px;
 color: #444444;
 background-color: #FFFFFF;
 border: 1px solid #BBBBBB;
}
.itemInput select {
 padding-left: 0px;
 padding-right: 0px;
 max-width: 100%;
}
.itemInput input[type="radio"], .itemInput input[type="checkbox"] {
 vertical-align: middle;
 height: 15px;
 width: 15px;
 margin: 0 0.1em 0 0;
 position: relative;
 top: -0.1em;
}
.itemInput select option {
 color: #444;
 background-color: #fff;
}
.itemInput figure {
 margin: 0;
}
.itemInput input[type="text"]:focus, .itemInput input[type="email"]:focus, .itemInput textarea:focus, .itemInput select:focus {
 box-shadow: 0px 0px 3px #f05050;
}
.itemInput label:hover {
 text-shadow: 0px 0px 2px #dd8080;
}
.comform-row figure img[onclick]:hover {
 cursor: pointer;
}
.annot {
 color: #444444;
 font-size: 0.9em;
 padding: 0px;
 display: inline-block;
 vertical-align: top;
 overflow-wrap: break-word;
 width: 100%;
}
.annot-upper {
 margin: 0px 4px 1px 0px;
}
.annot-lower {
 margin: 1px 4px 0px 0px;
}
.req-mark {
 display: inline-block;
 font-size: 0.8em;
 height: 1.4em;
 color: #EA3049;
 background-color: ;
 font-family: meiryo, 'Hiragino Kaku Gothic Pro', sans-serif;
 white-space: nowrap;
 border-radius: 4px;
 position: relative;
 padding: 0.1em 0.2em;
 margin: 0 0 0 0.2em;
}
.checkLabel {
 margin: 0px 4px;
 font-size: 0.9em;
 display: inline-block;
}
.tkaddress {
 display: inline-table;
}
.tkaddress th {
 background: 0;
 border: 0;
 padding: 0px 2px 0px 0px;
 text-align: left;
}
.tkaddress td {
 background: 0;
 border: 0;
 padding: 0px;
}
.tkaddress .search-address-button {
 padding: 1px 1px 1px 1px;
 font-size: 0.8em;
}
.choice-table {
 display: inline-table;
 border-spacing: 0;
 vertical-align: top;
}
.choice-table td {
 padding: 2px 4px 2px 18px;
 text-indent: -16px;
}
.choice-table td label {
 margin: 0px 0px 0px 2px;
}
.grid-item {
 display: inline-table;
 border-spacing: 0;
 vertical-align: top;
}
.grid-item-row {
 display: table-row;
}
.grid-item-colname {
 display: table-cell;
 padding: 4px;
 text-align: center;
}
.grid-item-rowname {
 display: table-cell;
 padding: 4px 0;
}
.grid-item-radio {
 display: table-cell;
 padding: 4px;
 text-align: center;
 border-radius: 4px;
}
.grid-item-radio:hover {
 background-color: rgba(255, 230, 230, 0.7);
}
.scale-table {}
.scale-table td {
 text-align: center;
 padding: 0px 4px 0px 4px;
}
.blockConnect {
 display: inline-block;
 margin: 0px;
 vertical-align: top;
}
.comform-title, .itemTitle, .itemInput, .itemInput select, .annot, #form-button button, .proc-step {
 font-family: "Yu Gothic Medium", meiryo, "MS PGothic", YuGothic, "MS PGothic", "Hiragino Kaku Gothic Pro", sans-serif;
}
.form-buttons {
 text-align: center;
 margin: 16px 0px;
 padding: 0;
}
.form-buttons button {
 font-size: 13px;
}
.form-buttons .return-top {
 margin: 0 32px 0 0;
}
#save-load-layer {
 position: fixed;
 top: -1px;
 left: 50%;
 margin-left: 125px;
 width: 180px;
 box-sizing: border-box;
 border: 1px solid #CCCCCC;
 border-radius: 0px 0px 6px 6px;
 box-shadow: 0px 1px 3px #999;
 background-color: #EEEEEE;
 padding: 2px;
 font-size: 12px;
 color: #555555;
 z-index: 10;
}
#save-load-layer #save-load-title {
 text-align: center;
 text-decoration: underline;
}
#save-load-layer #save-load-title:hover {
 cursor: pointer;
}
#save-load-layer #save-load-message {
 text-align: center;
 color: crimson;
 background-color: #fff;
 border-radius: 2px;
 text-shadow: 1px 1px 1px #ddd;
}
#save-load-buttons {
 margin: 2px 0px 2px 0px;
 padding: 2px;
 color: #444;
}
#save-load-buttons li {
 margin: 0px 0px 8px 0px;
}
#save-load-buttons button {
 width: 100%;
 line-height: 2.0em;
 padding: 2px 4px;
 margin: 0px 4px 2px 0px;
 color: #FFFFFF;
 background-color: #ABABAB;
 border: 1px solid #ddd;
 border-radius: 4px;
}
#save-load-buttons button:hover {
 text-decoration: underline;
 background-color:
}
@media print {
 #save-load-layer {
  display: none;
 }
}
.form-buttons .back-button {
 margin-right: 32px;
}
@media screen and (max-width: 760px) {
 .comform-wrap {
  max-width: 100%;
  padding: 0 0 8px 0;
  border: 0;
  margin: 0;
 }
 .comform-container {
  width: 100%;
 }
 .comform-row {
  display: block;
 }
 .comform-title {
  margin-right: auto;
  margin-left: auto;
  padding: 6px 6px 6px 10px;
  border-left: 0;
  border-right: 0;
  text-align: left;
　background-color: #1A1A1A;
 }
 .comform-row .itemTitle, .comform-row .itemInput {
  display: block;
  width: 100%;
  padding: 6px;
 }
 .itemInput input[type="text"]:not([size]), .itemInput input[name^="tkna"], .itemInput input[type="email"], .itemInput textarea {
  box-sizing: border-box;
 }
 .itemInput input[type="text"][size][name^="text"] {
  box-sizing: content-box;
  width: 94% !important;
  padding-left: 8px;
  padding-right: 8px;
 }
 .itemInput input[type="file"] {
  width: 100%;
 }
 .req-mark {
  float: none;
 }
 #form-button {
  width: auto;
 }
 .itemInput input, .itemInput textarea {
 }
 #save-load-layer {
  left: 0;
  width: 280px;
  margin: 0;
  font-size: 18px;
 }
 #save-load-layer #save-load-title {
  line-height: 32px;
 }
 #save-load-buttons li {
  margin-bottom: 6px;
 }
 #save-load-buttons button {
  padding: 2px;
 }
 #proc-step-container {}
 .proc-step {
  display: table-cell;
 }
}

@media screen and (max-width: 610px) {
 .itemInput .itemChoice {
  max-width: 100%;
 }
}
@media screen and (max-width: 415px) {
 .itemInput input[type="text"], .itemInput input[type="email"], .itemInput input[type="password"], .itemInput textarea, .itemInput select {
  font-size: 16px;
 }
 .comform-title {
  font-size: 18px;
 }
 .itemTitle, .itemInput {
  font-size: 16px;
 }
 .itemInput .tkaddress th {
  font-size: 14px;
  width: 72px;
 }
 .itemInput .tkaddress td {}
 .itemInput .tkaddress input[name$="-city"], .itemInput input[name$="-chomei"], .itemInput input[name$="-tatemono"] {
  width: 93%;
 }
 #form-button button, #form-button button.deco-button {
  font-size: 16px;
 }
 .form-buttons .deco-button-wide {
  width: 100%;
  min-width: auto;
 }
 .form-buttons-smartphone-reverse {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
 }
 .form-buttons-smartphone-reverse .back-button, .form-buttons-smartphone-reverse .return-top {
  margin: 24px auto 0 0;
 }
}
