/* ----------------------------------------------------------------------------
/* reset
---------------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
ol, ul, li {
  margin: 0;
  padding: 0;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
html {
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: subpixel-antialiased;
}
body {
  -webkit-text-size-adjust: 100%;
  margin: 0;
  padding: 0;
}
a, a:link, a:active, a:visited, a:hover, a:focus {
  text-decoration: none;
}
body * {
  text-shadow: none;
}
h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
  line-height: 1;
  font-weight: normal;
}
dl, dl dt, dl dd {
  margin: 0;
  padding: 0;
}
img {
  max-width: 100%;
  vertical-align: top;
}
input[type="button"],
input[type="text"],
input[type="submit"],
input[type="file"] {
  -webkit-appearance: none;
  border-radius: 0;
}
input[type="email"],
input[type="number"],
input[type="tel"],
input[type="file"] {
  ime-mode: disabled;
}
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="button"],
input[type="file"] {
  font-family: 'Noto Sans JP', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
  font-size: 18px;
}
input::placeholder {
  font-size: 16px;
  font-weight: 300;
  color: #aaaaaa;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  background: transparent;
  position: relative;
  z-index: 1;
}
select::-ms-expand {
  display: none;
}
button{
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
sup {
  font-size: 70%;
  vertical-align: top;
}
sub {
  font-size: 70%;
  vertical-align: bottom;
}
a {
  color: #333333;
}





/* ----------------------------------------------------------------------------
/* common
---------------------------------------------------------------------------- */
#K3_body {
  position: relative;
  font-family: 'Noto Sans JP', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.6em;
  color: #555555;
  -ms-transform: rotate(0.001deg);
}
#K3_body hr {
  display: none!important;
}
#K3_container.container {
  width: 100%;
}
#K3_container > #K3_header {
  width: 100%;
  margin: 0;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 40px;
  padding-right: 40px;
  box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.1);
  background-color: #ffffff;
  text-align: center;
}
#K3_container > #K3_header #K3_header_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
}
#K3_container > #K3_header #link_products img {
  height: 26px;
}
#K3_container > #K3_header #link_products div {
  margin-top: 5px;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.2em;
  line-height: 1em;
}
#K3_container > #K3_header #link_products div a:hover,
#K3_container > #K3_header #link_products div a:active,
#K3_container > #K3_header #link_products div a:focus {
  color: #428bca;
  text-decoration: none;
}
#K3_container > #K3_header #link_company:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0da";
  padding-right: 5px;
  color: #095ca8;
}
#K3_container > #K3_header #link_caravan a {
  display: inline-block;
  color: #005bac;
  font-size: 24px;
  font-weight: 900;
  line-height: 1em;
}
#K3_container > #K3_header #link_oyofair a {
  display: inline-block;
}
#K3_container > #K3_header #link_oyofair img {
  height: 36px;
}

#K3_container > #K3_content {
  width: 100%;
}
#K3_content #K3_headline {
  width: 960px;
  margin-top: 0;
  margin-left: auto;
  margin-right: auto;
}
#K3_content #K3_headline h2,
#K3_content .K3_hero h2 {
  margin-top: 80px;
  margin-bottom: 60px;
  font-size: 42px;
  font-weight: 700;
  line-height: 1.2em;
  color: #333333;
  text-align: center;
}
#K3_content .form-description {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 80px;
}

#K3_content form {
  width: 100%;
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: #ebe9e9;
}
#K3_content form fieldset {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
  padding: 40px 40px 60px;
  border-radius: 10px;
  background-color: #ffffff;
  box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
}
#K3_content form .control-group {
  margin: 0;
  padding-left: 30px;
  padding-right: 30px;
}
#K3_content form .control-group + .control-group,
#K3_content form script + .control-group {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px dashed #cccccc;
}
#K3_content form .control-label {
  margin-right: 0;
  margin-bottom: 20px;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4em;
}
#K3_content form .control-label .text-top {
  vertical-align: bottom;
}
#K3_content form .control-label .label-fit {
  margin-right: 10px;
  padding: 2px 10px;
  border-radius: 6px;
  color: #ffffff;
  font-size: 12px;
}
#K3_content form .control-label .label-fit.label-danger {
  background-color: #e54b4b;
}
#K3_content form .control-label .label-fit.label-warning {
  background-color: #f5b555;
}
#K3_content form .control-label .form-error {
  padding: 4px 10px 6px;
  border: 2px solid #e54b4b;
  color: #e54b4b;
  font-style: normal;
  font-size: 16px;
  font-weight: 700;
}
/*
#K3_content form .radio {
  margin: 0!important;
  padding: 15px;
  font-size: 18px;
}
#K3_content form .radio.inline {
  display: inline-block;
  margin-right: 10px!important;
  padding: 15px;
  font-size: 18px;
}
*/
#K3_content form textarea {
  -webkit-appearance: none;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif;
  font-size: 18px;
  resize: vertical;
  width: 100%;
  height: 120px;
  background-color: rgb(252, 252, 252);
  outline: none;
  padding: 10px;
  border-width: 1px;
  border-style: solid;
  border-color: rgb(204, 204, 204);
  border-image: initial;
  border-radius: 6px;
}
#K3_content form input {
  padding: 14px 20px;
  border: 1px solid #cccccc;
  border-radius: 6px;
}
#K3_content form .radio,
#K3_content form .checkbox {
  margin: 0!important;
  font-size: 18px;
  cursor: pointer;
}
#K3_content form .radio.inline,
#K3_content form .checkbox.inline {
  display: inline-block;
  margin-right: 10px!important;
}
#K3_content form .radio label,
#K3_content form .checkbox label {
  display: block;
  position: relative;
  padding: 15px 15px 15px 40px;
}
#K3_content form .radio input,
#K3_content form .checkbox input {
  position: absolute;
  top: 15px;
  left: 10px;
  width: 20px;
  height: 20px;
  margin-left: 0!important;
  padding: 0;
}
#K3_content form .radio:hover,
#K3_content form .radio:active,
#K3_content form .radio:focus {
  background-color: #eeeeee;
}
#K3_content form .radio.inline:hover,
#K3_content form .radio.inline:active,
#K3_content form .radio.inline:focus {
  background-color: #eeeeee;
}
#K3_content form .checkbox:hover,
#K3_content form .checkbox:active,
#K3_content form .checkbox:focus {
  background-color: #eeeeee;
}
#K3_content form .checkbox.inline:hover,
#K3_content form .checkbox.inline:active,
#K3_content form .checkbox.inline:focus {
  background-color: #eeeeee;
}
#K3_content form #K3_privacy_policy {
  margin-top: 50px;
  margin-left: 30px;
  margin-right: 30px;
  margin-bottom: 50px;
}
#K3_content form #K3_privacy_policy .privacy_policy {
  max-height: none;
  overflow: visible;
}
#K3_content form #K3_privacy_policy .note {
  font-size: 16px;
}
#K3_content form #K3_privacy_policy p {
  margin: 0;
}
#K3_content form #K3_privacy_policy p + p {
  margin-top: 10px;
}
#K3_content form .help-block {
  color: #777777;
  font-size: 16px;
  font-weight: 500;
}

#K3_content form .btn-primary {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif;
  display: block;
  width: auto;
  font-weight: 700;
  font-size: 20px!important;
  color: rgb(255, 255, 255);
  box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 20px;
  background-image: linear-gradient(-45deg, rgb(255, 0, 110), rgb(255, 213, 0));
  background-size: 200%;
  padding: 20px 60px;
  border-radius: 6px;
  border: none;
  transition: all 0.5s ease 0s;
  white-space: normal;
  text-align: center;
}
#K3_content form .btn-primary:hover,
#K3_content form .btn-primary:active,
#K3_content form .btn-primary:focus {
  background-position: right center;
}

#K3_container > #K3_footer {
  display: block;
  width: 100%;
  margin: 0;
}
#K3_container > #K3_footer #K3_footer_inner {
  padding: 0;
}
#K3_container > #K3_footer footer {
  width: 100%;
  padding-top: 40px;
  background-color: #666666;
  box-shadow: 0px 6px 10px 0px #555555 inset;
}
#K3_container > #K3_footer footer .inner {
  width: 100%;
  padding-left: 40px;
  padding-right: 40px;
}

#K3_container > #K3_footer footer dl {
  padding-bottom: 40px;
  color: #eeeeee;
}
#K3_container > #K3_footer footer dl dt {
  margin-bottom: 5px;
  font-weight: 700;
}
#K3_container > #K3_footer footer dl img {
  display: block;
  height: 26px;
  margin-bottom: 10px;
}
#K3_container > #K3_footer footer #copyright {
  width: 100%;
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 400;
  color: #999999;
  background-color: #eeeeee;
  text-align: right;
}

#K3_content > h3,
#K3_content > p {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
#K3_content > h3 {
  margin-bottom: 20px;
  font-size: 30px;
}
#K3_content form#form-validation {
  margin-top: 50px;
}
#K3_content form table {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 10px;
  background-color: #ffffff;
  box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
}
#K3_content form table tbody {
  display: block;
  padding: 40px;
}
#K3_content form table.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: transparent;
}
#K3_content form table tr:nth-of-type(1) {
  display: none;
}
#K3_content form table tr:hover {
  background-color: transparent;
}
#K3_content form table tr {
  display: table;
  width: 100%;
}
#K3_content form table th,
#K3_content form table td {
  padding: 20px;
  border: none;
  vertical-align: middle;
}
#K3_content form table th {
  background-color: #d9d9d9;
}
#K3_content form table tr:nth-of-type(n+3) td {
  border-top: 1px dashed #cccccc;
}
#K3_content form table tr td:nth-of-type(1) {
  width: 40%;
  background-color: #ffffff;
}
#K3_content form table tr td:nth-of-type(2) {
  font-weight: 700;
  font-size: 18px;
  text-align: left;
}

#K3_content form .flex_box {
  display: flex;
}
#K3_content form .flex_box li {
  width: 100%;
}
#K3_content form .flex_box li + li {
  margin-left: 10px;
}

#K3_content form #K3_control_btn {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 60px;
  margin-left: auto;
  margin-right: auto;
}
#K3_content form table + #K3_control_btn .btn-primary {
  margin-left: 20px;
}
#K3_content form #K3_control_btn .btn-default {
  font-weight: 700;
  font-size: 20px;
  padding: 23px 60px 20px;
  border-radius: 6px;
  border: none;
  background-color: #aaaaaa;
  color: #ffffff;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 6px;
  text-align: center;
}
#K3_content form #K3_control_btn .btn-default:hover,
#K3_content form #K3_control_btn .btn-default:active,
#K3_content form #K3_control_btn .btn-default:focus {
  background-color: #777777;
}

#K3_content .jumbotron {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
  background-color: transparent;
}
#K3_content .jumbotron + * {
  width: 960px;
  min-height: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 60px;
  text-align: left;
}

@media screen and (max-width: 1040px) {
  #K3_container > #K3_header {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media screen and (max-width: 1000px) {
/*
  #K3_container > #K3_header #K3_header_inner,
*/
  #K3_content #K3_headline,
  #K3_content .form-description,
  #K3_content form fieldset,
  #K3_content > h3,
  #K3_content > p,
  #K3_content form table,
  #K3_content form #K3_control_btn,
  #K3_content .jumbotron,
  #K3_content .jumbotron + * {
    width: calc(100% - 40px);
  }
}
@media screen and (max-width: 767px) {
  #K3_container #K3_content {
    padding: 0;
  }
  #K3_content form #K3_control_btn .controls,
  #K3_content form .btn-primary {
    width: 100%;
  }
  #K3_content form table + #K3_control_btn {
    flex-direction: column-reverse;
  }
  #K3_content form table + #K3_control_btn .btn-primary {
    margin-left: 0;
    margin-bottom: 30px;
  }
  #K3_content .K3_hero h3 {
    margin: 0;
    font-size: 18px;
    line-height: 1.4em;
  }
  #K3_content .K3_hero h3 + h3 {
    margin-top: 10px;
  }
}
@media screen and (max-width: 559px) {
  #K3_content form fieldset {
    padding: 40px 20px;
  }
  #K3_content form .control-group {
    padding-left: 10px;
    padding-right: 10px;
  }
  #K3_content form table th,
  #K3_content form table td {
    display: block;
  }
  #K3_content form table tr td:nth-of-type(1) {
    width: 100%;
  }
  #K3_content form table tr:nth-of-type(n+2) td {
    border-top: 1px dashed #cccccc;
  }
  #K3_content form table tr:nth-of-type(n+2) td:nth-of-type(1) {
    background-color: #efefef;
  }
  #K3_content form table tr:nth-of-type(n+2) td:nth-of-type(2) {
    border-top: none;
  }
  #K3_content form .radio.inline,
  #K3_content form .checkbox.inline {
    display: block;
    margin-right: 0!important;
  }
  #K3_content form .control-label .form-error {
    display: block;
    margin-top: 10px;
    margin-left: 0;
    padding-top: 2px;
    padding-bottom: 4px;
    text-align: center;
  }
}















#container {
  padding-top: 40px;
}
#container .inner > h1 {
  margin-top: 40px;
  margin-bottom: 60px;
  font-size: 42px;
  font-weight: 700;
  color: #095ca8;
  line-height: 1.2em;
  color: #333333;
  text-align: center;
}
#container .inner > h1 span {
  display: block;
  margin-top: 10px;
  color: #666666;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.6em;
}
#container h2 {
  margin-top: 80px;
  margin-bottom: 60px;
  font-size: 30px;
  font-weight: 700;
}
#container h3 {
  margin-top: 60px;
  margin-bottom: 30px;
  color: #095ca8;
  font-size: 24px;
  font-weight: 700;
}

.inner {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
}

#container p + p,
ul.normal li + li,
ol.normal li + li,
.block_dl ul li + li,
p + ul,
p + ol {
  margin-top: 10px;
}
ul.normal,
ol.normal {
  padding-left: 20px;
}
ul.normal li {
  list-style: disc;
}
ol.normal li {
  list-style: decimal;
}

.link_txt a {
  position: relative;
  margin-left: 22px;
  text-decoration: underline;
}
.link_txt a:hover,
.link_txt a:active,
.link_txt a:focus {
  text-decoration: none;
}
.link_txt a:before {
  position: absolute;
  top: 0;
  left: -21px;
  font-family: "Font Awesome 5 Free";
  content: '\f30b';
  font-weight: 900;
}
.link_txt.dl a:before {
  font-family: "Font Awesome 5 Free";
  content: '\f019';
}
.link_txt a[target="_blank"] {
  position: relative;
  margin-right: 22px;
}
.link_txt a[target="_blank"]:after {
  position: absolute;
  bottom: 0;
  right: -21px;
  font-family: "Font Awesome 5 Free";
  content: '\f24d';
  font-weight: 500;
}
.link_txt.pdf a[target="_blank"]:after {
  position: absolute;
  bottom: 0;
  right: -21px;
  font-family: "Font Awesome 5 Free";
  content: '\f1c1';
  font-weight: 500;
}

ul.normal a,
ul.normal a:link,
ul.normal a:visited {
  color: #095ca8;
  text-decoration: underline;
}
ul.normal a:hover,
ul.normal a:active,
ul.normal a:focus {
  text-decoration: none;
}
ol.normal a,
ol.normal a:link,
ol.normal a:visited {
  color: #095ca8;
  text-decoration: underline;
}
ol.normal a:hover,
ol.normal a:active,
ol.normal a:focus {
  text-decoration: none;
}
ol.normal a[target="_blank"],
ul.normal a[target="_blank"] {
  position: relative;
  margin-right: 22px;
}
ol.normal a[target="_blank"]:after,
ul.normal a[target="_blank"]:after {
  position: absolute;
  bottom: 0;
  right: -21px;
  font-family: "Font Awesome 5 Free";
  content: '\f24d';
  font-weight: 500;
}

.block_table {
  width: 1100px;
  margin-top: 80px;
  margin-left: auto;
  margin-right: auto;
}

table {
  width: 100%;
  border-top: 1px solid #cccccc;
  border-left: 1px solid #cccccc;
}
table th {
  background-color: #eeeeee;
  font-weight: 700;
}
table th,
table td {
  padding: 20px;
  border-right: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  text-align: center;
  vertical-align: middle;
}
table td a {
  display: block;
  padding: 10px;
  font-weight: 700;
  color: #ffffff;
  border-radius: 6px;
  background-image: linear-gradient(-45deg, #FF006E, #ffba00);
  transition: .5s;
  background-size: 200%;
}
table td a:hover {
  background-position: right center;
}
table td span {
  padding-left: 5px;
  font-size: 14px;
  font-weight: 400;
}

.block_toggle {
  margin-top: 80px;
  margin-bottom: 80px;
}
.block_toggle dl {
  background-color: #ffffff;
  box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
}
.block_toggle dt {
  position: relative;
  padding: 20px;
  font-size: 20px;
  font-weight: 500;
  text-align: center;
  cursor: pointer;
  border-top: 4px solid #ffc857;
}
.block_toggle dt:after {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Free";
  content: '\f107';
  font-weight: 900;
  font-size: 30px;
}
.block_toggle dt.active:after {
  content: '\f106';
}
.block_toggle dd {
  display: none;
  border-top: 1px solid #cccccc;
}
.list_index {
  padding-left: 20px;
  padding-right: 20px;
}
.list_index li {
  padding: 20px;
}
.list_index li + li {
  border-top: 1px solid #eeeeee;
}

section.block_toggle {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 20px;
  padding-right: 20px;
  text-align: left;
}
section.block_toggle div {
  display: none;
/*
  margin-top: 20px;
*/
  margin-bottom: 30px;
  padding: 20px 30px;
  font-weight: 500;
  background-color: #f4fafb;
}
section.block_toggle + section {
/*
  padding-top: 20px;
*/
  border-top: 2px dashed #eeeeee;
}
section.block_toggle h1 {
  position: relative;
  padding-top: 20px;
  padding-right: 80px;
  padding-bottom: 20px;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.4em;
  cursor: pointer;
}
section.block_toggle h1:after {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Free";
  content: '\f107';
  font-weight: 900;
  font-size: 30px;
}
section.block_toggle h1.active:after {
  content: '\f106';
}

.block_table_toggle {
  width: calc(100% - 40px);
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 20px;
}

@media screen and (max-width: 1140px) {
  .block_table {
    width: calc(100% - 40px);
    height: 400px;
    overflow: auto;
  }
  .block_table table {
    width: 1100px;
  }
  .block_table::-webkit-scrollbar {
    width: 15px;
    height: 15px;
  }
  .block_table::-webkit-scrollbar-track {
    border-radius: 10px;
    background: #f2f2f2;
  }
  .block_table::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background: #095CA8;
  }
}

@media screen and (max-width: 1000px) {
  .inner {
    width: calc(100% - 40px);
  }
  .block_table_toggle {
    height: 400px;
    overflow: auto;
  }
  .block_table_toggle table {
    width: 920px;
  }
  .block_table_toggle::-webkit-scrollbar {
    width: 15px;
    height: 15px;
  }
  .block_table_toggle::-webkit-scrollbar-track {
    border-radius: 10px;
    background: #f2f2f2;
  }
  .block_table_toggle::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background: #095CA8;
  }
}

@media screen and (max-width: 559px) {
  section.block_toggle {
    padding-left: 0;
    padding-right: 0;
  }
  section.block_toggle h1 {
    position: static;
    padding-right: 0;
  }
  section.block_toggle h1:after {
    display: block;
    position: static;
    margin-top: 20px;
    margin-bottom: -20px;
    text-align: center;
  }
}

#block_loading {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  background-color: #ebe9e9;
  text-align: center;
}
#block_loading figure {
  margin-bottom: 20px;
  color: #333333;
  font-weight: 700;
}
#block_loading a {
  color: #333333;
  font-weight: 700;
}





/* ----------------------------------------------------------------------------
/* header
---------------------------------------------------------------------------- */
header {
/*
  position: fixed;
*/
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
  box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.1);
  background-color: #ffffff;
  text-align: center;
  z-index: 100;
}
header .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
header a {
  color: #095ca8;
}
header #link_products img {
  height: 26px;
}
header #link_products span {
  display: block;
  margin-top: 5px;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.2em;
  line-height: 1em;
}
header #link_company {
  margin-left: 20px;
}
header #link_company:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0da";
  padding-right: 5px;
  color: #095ca8;
}





/* ----------------------------------------------------------------------------
/* nav_global
---------------------------------------------------------------------------- */
/*
#nav_global {
  position: relative;
  padding-top: 90px;
  text-align: center;
}
#nav_global:before,
#nav_global:after {
  content: '';
  height: calc(100% - 2em);
  pointer-events: none;
  position: absolute;
  top: 1em;
  width: 10px;
  z-index: 2;
}
#nav_global:before {
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, white 100%);
  right: 0;
}
#nav_global:after {
  background: linear-gradient(to left, rgba(255,255,255,0) 0%, white 100%);
  left: 0;
}

#nav_global ul {
  display: flex;
  flex-wrap: nowrap;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  font-size: 0;
}
#nav_global ul::-webkit-scrollbar {
  height: 15px;
}
#nav_global ul::-webkit-scrollbar-track {
  border-radius: 10px;
  background: #f2f2f2;
}
#nav_global ul::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: #09c9d9;
}
#nav_global ul {
  padding: 20px;
}
#nav_global ul li {
  display: inline-block;
  white-space: nowrap;
  font-size: 16px;
}
#nav_global ul li a {
  display: block;
  padding: 10px 20px;
  border: 1px solid #eeeeee;
  border-radius: 6px;
}
#nav_global ul li + li {
  margin-left: 10px;
}
#nav_global ul li:last-of-type {
  padding-right: 20px;
}

@media screen and (min-width: 700px) {
  #nav_global {

  }
  #nav_global ul {
    justify-content: center;
  }
}
@media screen and (max-width: 699px) {
  #nav_global ul {
    padding-top: 0;
  }
}
*/





/* ----------------------------------------------------------------------------
/* topic_path
---------------------------------------------------------------------------- */
#topic_path {
  display: flex;
  margin-bottom: 80px;
}
#topic_path a {
  text-decoration: underline;
}
#topic_path a:hover,
#topic_path a:active,
#topic_path a:focus {
  text-decoration: none;
}
#topic_path li:first-of-type:before {
  font-family: "Font Awesome 5 Free";
  content: '\f015';
  font-weight: 900;
  padding-right: 5px;
}
#topic_path li + li {
  margin-left: 10px;
}
#topic_path li + li:before {
  font-family: "Font Awesome 5 Free";
  content: '\f30b';
  font-weight: 900;
  padding-right: 10px;
}

@media screen and (max-width: 559px) {
  #topic_path {
    display: block;
    line-height: 1.2em;
  }
  #topic_path li + li {
    margin-top: 5px;
    margin-left: 0;
  }
}





/* ----------------------------------------------------------------------------
/* footer
---------------------------------------------------------------------------- */
.contact_block {
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: #424874;
  color: #424874;
}
.contact_block a {
  color: #424874;
}
.contact_block ul {
  display: flex;
}
.contact_block ul li {
  width: calc((100% - 104px) / 2);
  padding: 20px;
  border-radius: 10px;
  background-color: #ffffff;
  text-align: center;
}
.contact_block ul li + li {
  margin-left: 20px;
}
.contact_block ul li div {
  font-weight: 500;
}
.contact_block ul li p span {
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 40px;
  font-weight: 700;
}
.contact_block ul li:nth-of-type(2) p {
  margin-top: 8px;
  font-weight: 700;
  font-size: 20px;
  word-break: break-all;
  line-height: 1.2em;
}
.contact_block ul li:nth-of-type(2) p.line1 {
  font-size: 26px;
  line-height: 1.2em;
}
.contact_block ul li:nth-of-type(1) span:before {
  font-family: "Font Awesome 5 Free";
  content: '\f2a0';
  font-weight: 900;
  padding-right: 10px;
}
.contact_block ul li:nth-of-type(2) p:before {
  font-family: "Font Awesome 5 Free";
  content: '\f0e0';
  font-weight: 900;
  font-size: 22px;
  margin-right: 5px;
}
.contact_block ul li:nth-of-type(2) p.line1:before {
  font-size: 34px;
}



@media screen and (max-width: 959px) {
  .contact_block ul {
    display: block;
  }
  .contact_block ul li {
    width: calc(100% - 40px);
  }
  .contact_block ul li + li {
    margin-left: 0;
    margin-top: 20px;
  }
}





/* ----------------------------------------------------------------------------
/* index
---------------------------------------------------------------------------- */
.normal_info {
  margin-top: 80px;
  margin-bottom: 80px;
}
#container .normal_info h1 {
  margin-top: 0;
  margin-bottom: 20px;
  font-size: 24px;
}
.normal_info h1 + ul {
  padding: 20px;
  border: 1px solid #eeeeee;
}
.normal_info h1 + ul li {
  display: flex;
  padding-left: 20px;
  padding-right: 20px;
}
.normal_info h1 + ul div {
  width: 6em;
}
.normal_info h1 + ul div + div {
  margin-left: 10px;
  width: calc(100% - 6em - 10px);
}
.info_toggle dt {
  font-weight: 700;
  cursor: pointer;
}
.info_toggle dt:after {
  font-family: "Font Awesome 5 Free";
  content: '\f107';
  font-weight: 900;
  margin-left: 10px;
}
.info_toggle dt.active:after {
  font-family: "Font Awesome 5 Free";
  content: '\f106';
  font-weight: 900;
  margin-left: 10px;
}
.info_toggle dd {
  display: none;
  padding-top: 20px;
  padding-bottom: 20px;
}
.normal_info h1 + ul > li + li {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 2px dashed #f7f7f7;
}
.normal_info li a {
  font-weight: 700;
  color: #095ca8;
}
.normal_info .link_txt.normal a {
  margin-left: 0;
}
.normal_info .link_txt.normal a:before {
  display: none;
}
.normal_info li a[target="_blank"]:after {
  font-family: "Font Awesome 5 Free";
  content: '\f24d';
  font-weight: 500;
  margin-left: 5px;
}
.normal_info li a:hover,
.normal_info li a:active,
.normal_info li a:focus {
  text-decoration: none;
}

.nav_local {
  padding-top: 60px;
  padding-bottom: 80px;
  background-color: #ebe9e9;
}
.nav_local + .nav_local {
  border-top: 2px dashed #cccccc;
}
.nav_local ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 920px;
  margin-left: auto;
  margin-right: auto;
}
.nav_local ul li {
  width: calc((100% - 20px) / 2);
  margin-top: 20px;
  border-radius: 10px;
  background-color: #ffffff;
  box-shadow: 0px 0px 10px rgba(0,0,0,0.05);
}
.nav_local ul li a {
  display: block;
  position: relative;
  padding: 30px;
  font-size: 20px;
  font-weight: 700;
  color: #424874;
  text-align: center;
}
.nav_local ul li a:after {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Free";
  content: '\f105';
  font-weight: 900;
  font-size: 30px;
  color: #ebe9e9;
}
.nav_local ul li a i {
  display: block;
  margin-bottom: 20px;
  font-size: 60px;
}

@media screen and (max-width: 959px) {
  .nav_local ul {
    width: calc(100% - 40px);
  }
}
@media screen and (max-width: 559px) {
  .nav_local ul {
    display: block;
  }
  .nav_local ul li {
    width: calc(100% - 2px);
  }
}





/* ----------------------------------------------------------------------------
/* .block_dl .block_info
---------------------------------------------------------------------------- */
.block_dl,
.block_info {
  padding-top: 80px;
  padding-bottom: 80px;
}
.block_dl {
  margin-top: 80px;
  background-color: #ebe9e9;
}
.block_info {
/*
  background-color: #94C1CD;
*/
}
.block_info + .block_dl {
  margin-top: 0;
}
.block_dl + .block_info {
  margin-top: 0;
}
.block_dl dl,
.block_info dl {
  padding: 40px;
  border-radius: 10px;
  background-color: #ffffff;
  box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
}
.block_dl dl + dl,
.block_info dl + dl {
  margin-top: 40px;
}
.block_dl dl dt,
.block_info dl dt {
  padding: 20px;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4em;
}
.block_dl dl dd,
.block_info dl dd {
  padding: 20px;
  border-top: 1px solid #cccccc;
  text-align: center;
}
body:not(.mailform) .block_dl dl dd + dt:before,
body:not(.mailform).block_info dl dd + dt:before {
  font-family: "Font Awesome 5 Free";
  content: '\f063';
  font-weight: 900;
  font-size: 40px;
  display: block;
  margin-top: 40px;
  padding-bottom: 60px;
  text-align: center;
}
.block_dl dl dd p,
.block_info dl dd p,
.block_dl dl dd ul {
  text-align: left;
}
.block_dl dl dd img,
.block_info dl dd img {
  margin-top: 40px;
  box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
}
.block_dl dl dd .btn,
.block_info dl dd .btn {
  width: 300px;
  margin-top: 40px;
  margin-left: auto;
  margin-right: auto;
}
.block_dl dl dd .btn a,
.block_info dl dd .btn a {
  display: block;
  padding: 20px 40px;
  font-weight: 700;
  font-size: 20px;
  color: #ffffff;
  border-radius: 6px;
  box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
  background-image: linear-gradient(-45deg, #FF006E, #FFD500);
  transition: .5s;
  background-size: 200%;
}
.block_dl dl dd .btn a:hover,
.block_dl dl dd .btn a:active,
.block_dl dl dd .btn a:focus {
  background-position: right center;
}
.block_info dl dd .btn a:hover,
.block_info dl dd .btn a:active,
.block_info dl dd .btn a:focus {
  background-position: right center;
}
.block_dl .note {
  padding: 20px;
  background-color: #f2f3f8;
}
.block_dl * + .note {
  margin-top: 20px;
}

@media screen and (max-width: 559px) {
  .block_dl dl,
  .block_info dl {
    padding: 20px;
  }
  .block_dl dl dd,
  .block_info dl dd {
    padding-left: 0;
    padding-right: 0;
  }
  .block_dl dl dd .btn,
  .block_info dl dd .btn {
    width: 100%;
  }
}





/* ----------------------------------------------------------------------------
/* #kiyaku
---------------------------------------------------------------------------- */
#kiyaku {
  margin-top: 40px;
  padding: 50px 40px;
  height: 400px;
  border: 1px solid #eeeeee;
  overflow-y: auto;
  box-shadow: 0px 0px 8px 3px #f6f6f6 inset;
  background-color: #fcfcfc;
  text-align: left;
}
#kiyaku::-webkit-scrollbar {
  width: 15px;
}
#kiyaku::-webkit-scrollbar-track {
  background: #f2f2f2;
}
#kiyaku::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: #095ca8;
}
#kiyaku h1 {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #eeeeee;
  color: #777777;
  line-height: 1.4em;
  font-size: 28px;
  font-weight: 600;
  text-align: center;
}
#kiyaku h2 {
  margin-top: 60px;
  margin-bottom: 20px;
  line-height: 1.4em;
  font-size: 20px;
  font-weight: 600;
}
#kiyaku ol {
  list-style: decimal;
  padding-left: 20px;
}
#kiyaku ol li + li {
  margin-top: 10px;
}
#kiyaku p:last-of-type {
  margin-top: 60px;
  text-align: right;
}

table.normal th {
  white-space: pre;
}
table.normal td {
  text-align: left;
}

@media screen and (min-width: 560px) {
  table.normal th {
    width: 12em;
  }
}
@media screen and (max-width: 559px) {
  #kiyaku {
    height: 300px;
    padding: 20px;
  }
  #kiyaku h1 {
    text-align: left;
  }
  table.normal,
  table.normal th,
  table.normal td {
    display: block;
  }
}





/* ----------------------------------------------------------------------------
/* .update
---------------------------------------------------------------------------- */
#container .block_info.block_update h2 {
  margin-top: 0;
}
.block_info.block_update ul li + li {
  padding-top: 10px;
  border-top: 2px dashed #eeeeee;
}
.block_info.block_update ul li.new:before {
  content: 'NEW';
  margin-right: 10px;
  padding: 2px 10px;
  background-color: #e54b4b;
  border-radius: 6px;
  color: #ffffff;
  font-size: 12px;
}

.block_dl ul .new:before {
  content: 'NEW';
  margin-right: 10px;
  padding: 2px 10px;
  background-color: #e54b4b;
  border-radius: 6px;
  color: #ffffff;
  font-size: 12px;
}





/* ----------------------------------------------------------------------------
/* form
---------------------------------------------------------------------------- */
form button {
  font-family: 'Noto Sans JP', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
  display: block;
  width: 300px;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  padding: 20px 40px;
  font-weight: 700;
  font-size: 20px;
  color: #ffffff;
  border-radius: 6px;
  box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
  background-image: linear-gradient(-45deg, #ff006e, #ffd500);
  transition: .5s;
  background-size: 200%;
}
form button:hover,
form button:active,
form button:focus {
  background-position: right center;
}

form .chk_box {
  margin-top: 20px;
}
form .chk_box label {
  display: flex;
  justify-content: center;
  background-color: #ffffff;
  color: #333333;
  cursor: pointer;
}
form .chk_box label:hover,
form .chk_box label:active,
form .chk_box label:focus {
  background-color: #eeeeee;
}
form .chk_box input[type="checkbox"] {
  display: none;
}
form .chk_box input[type="checkbox"] + span {
  display: block;
  position:relative;
  padding: 20px 20px 20px 60px;
}
form .chk_box input[type="checkbox"] + span:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-color: #ffffff;
  border: 1px solid #999999;
  border-radius: 4px;
}
form .chk_box input[type="checkbox"]:checked + span {
  font-weight: 700;
  color: #01172f;
}
form .chk_box input[type="checkbox"]:checked + span:after{
  display: block;
  position: absolute;
  top: 50%;
  left: 16px;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Free";
  content: "\f00c";
  font-weight: 900;
  font-size: 30px;
  color: #095ca8;
}
form .chk_box input[type="checkbox"] + span a:after {
  padding-left: 5px;
  padding-right: 5px;
  font-family: "Font Awesome 5 Free";
  content: "\f24d";
  font-weight: 900;
}

#container form .radio_box h3 {
  margin-top: 20px;
  margin-bottom: 10px;
  color: #555555;
  font-size: 18px;
  line-height: 1.4em;
  text-align: left;
}
.radio_box ul {
  display: flex;
  flex-wrap: wrap;
}
.radio_box ul li {
  position: relative;
  margin-right: 20px;
}
.radio_box input[type='radio'] {
  display: none;
}
.radio_box input[type='radio'] + span {
  display: block;
  position: relative;
  padding: 4px 10px 4px 30px;
  cursor: pointer;
  z-index: 10;
}
.radio_box input[type='radio'] + span::before {
  position: absolute;
  top: 5px;
  left: 0;
  display: block;
  content: ' ';
  z-index: -1;
  width: 20px;
  height: 20px;
  border: 1px solid #999999;
  border-radius: 20px;
}
.radio_box input[type='radio']:checked + span {
  padding: 4px 20px;
  color: #ffffff;
  font-weight: 700;
}
.radio_box input[type='radio']:checked + span::before {
  top: 0;
  width: 100%;
  height: 100%;
  background: #095ca8;
  border: none;
}
.radio_box input[type='radio'] + span,
.radio_box input[type='radio'] + span::before {
  transition: 0.25s all ease;
}
.block_dl .radio_box ul li + li {
  margin-top: 0;
/*
  margin-left: 20px;
*/
}
@media screen and (max-width: 559px) {
  form button {
    width: 100%;
  }
  .radio_box ul {
    display: block;
  }
  .block_dl .radio_box ul li + li {
    margin-top: 0;
    /*
    margin-left: 0;
    */
  }
  .radio_box input[type='radio'] + span {
    padding: 10px 10px 10px 30px;
  }
  .radio_box input[type='radio'] + span::before {
    top: 10px;
    border-radius: 40px;
  }
  .radio_box input[type='radio']:checked + span {
    padding: 10px 20px;
    text-align: center;
  }
}

.mailform form {
  padding-bottom: 100px;
}
.mailform form .block_dl .chk_box + .chk_box {
  padding-top: 20px;
  border-top: 2px dashed #eeeeee;
}
.mailform form .block_dl .chk_box label {
  display: block;
}
.mailform form .block_dl .chk_box input[type="checkbox"] + span {
  padding-top: 10px;
  padding-bottom: 10px;
}
.mailform form .block_dl .chk_box h1 {
  margin-bottom: 20px;
  padding-left: 20px;
  padding-right: 20px;
  color: #095ca8;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: 700;
  text-align: left;
}
.mailform form .required {
  margin-left: 10px;
  padding: 2px 10px;
  background-color: #e54b4b;
  border-radius: 6px;
  color: #ffffff;
  font-size: 12px;
}
.mailform form textarea {
  border: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: 'Noto Sans JP', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
  font-size: 18px;
  resize: vertical;
  width: calc(100% - 22px);
  padding: 10px;
  border: 1px solid #cccccc;
  border-radius: 6px;
  background-color: #fcfcfc;
}
.mailform form textarea::-webkit-scrollbar {
  width: 15px;
}
.mailform form textarea::-webkit-scrollbar-track {
  background: #f2f2f2;
}
.mailform form textarea::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: #095ca8;
}

.mailform form .select_box {
  position: relative;
}
.mailform form .select_box select {
  padding: 10px 20px;
  border-radius: 6px;
  font-size: 16px;
  font-family: 'Noto Sans JP', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
}
.mailform form .select_box:after {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Free";
  content: "\f078";
  font-weight: 900;
}

.mailform form .btn_file {
  display: block;
  width: 400px;
  margin-left: auto;
  margin-right: auto;
  padding: 10px;
  border: 2px solid #999999;
  border-radius: 6px;
  background-color: #999999;
  color: #ffffff;
  font-weight: 700;
  cursor: pointer;
}
.mailform form .btn_file:hover {
  background: #ffffff;
  color: #333333;
}
.mailform form .btn_file > input {
  display: none;
}
.mailform .btn_file2 input {
   display: none;
}
.mailform .btn_file2 {
  display: block;
  width: 400px;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  padding: 10px;
  border: 2px solid #999999;
  border-radius: 6px;
  background-color: #999999;
  color: #ffffff;
  font-weight: 700;
  cursor: pointer;
  text-align: center;
}
.mailform .btn_file2:hover {
  background: #ffffff;
  color: #333333;
}
.mailform .btn_file2::after {
   content: "";
}
.mailform .btn_file2.changed::after {
   content: "";
}
@media screen and (max-width: 504px) {
  .mailform form .btn_file,
  .mailform form .btn_file2 {
    width: calc(100% - 24px);
  }
}

.mailform form .block_zipcode {
  display: flex;
  align-items: center;
}
.mailform form .block_zipcode span {
  margin-right: 10px;
  font-size: 24px;
  font-weight: 700;
}
.mailform form .block_zipcode input {
  width: 160px;
}
.mailform form .block_zipcode button {
  width: auto;
  margin-top: 0;
  margin-left: 20px;
  margin-right: 0;
  padding: 10px 20px;
  font-size: 16px;
  box-shadow: none;
  background: #999999;
  border: 2px solid #999999;
}
.mailform form .block_zipcode button:hover {
  background: #ffffff;
  color: #333333;
}
@media screen and (max-width: 750px) {
  .mailform form .block_zipcode {
    display: block;
  }
  .mailform form .block_zipcode button {
    width: 100%;
    margin-top: 10px;
    margin-left: 0;
  }
}

.mailform form table {
  margin-bottom: 30px;
}
.mailform form table th {
  white-space: pre;
}
.mailform form table td {
  font-size: 18px;
  line-height: 1.6em;
  text-align: left;
}
.mailform form table td input {
  width: calc(100% - 42px);
  padding: 14px 20px;
  border: 1px solid #cccccc;
  border-radius: 6px;
}
.mailform form table td div + div {
  margin-top: 10px;
}

#error_message {
  margin-top: 40px;
  padding: 10px;
  border-radius: 6px;
  border: 2px solid #e54b4b;
  color: #e54b4b;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
}
.mailform form .error_msg {
  margin-bottom: 10px;
  padding: 4px 10px;
  background-color: #e54b4b;
  border-radius: 6px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
}

.mailform form .block_btn {
  display: flex;
  justify-content: center;
}
.mailform form .block_btn li + li {
  margin-left: 20px;
}
.mailform form .block_btn button[type="button"] {
  background: #999999;
}

.mailform #powered_by_me {
  display: block;
  margin-bottom: 30px;
  font-size: 13px;
  text-align: center;
}

.mailform.thanks #container {
  padding-bottom: 100px;
}

@media screen and (max-width: 559px) {
  .mailform form table,
  .mailform form table tbody,
  .mailform form table tr,
  .mailform form table th,
  .mailform form table td {
    display: block;
  }
  .mailform form .block_btn {
    flex-direction: column-reverse;
  }
  .mailform form .block_btn li + li {
    margin-left: 0;
  }
  .mailform form .block_zipcode {
    flex-wrap: wrap;
  }
  .mailform form .block_zipcode button {
    margin-top: 10px;
    margin-left: 0;
  }
  .mailform form .btn_file {
    width: calc(100% - 24px);
  }
}



#order .block_dl h2 {
  margin-top: 0;
  margin-bottom: 20px;
  font-size: 18px;
  line-height: 1.4em;
  text-align: left;
}
#order .block_dl .block_license + h2,
#order .block_dl .radio_box + h2,
#order .block_dl .block_cloud + h2 {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 2px dashed #eeeeee;
}
#order .block_license {
  display: flex;
  align-items: center;
}
#order .block_license .select_box {
  width: 50%;
}
#order .block_license .chk_box,
#order .block_license .link_txt {
  width: calc(50% - 40px);
  margin-top: 0;
  margin-left: 40px;
  text-align: left;
}
/*
#order .block_license .chk_box label {
  border-radius: 6px;
}
*/
#order .block_dl dl dt {
  color: #095ca8;
}
#order .block_dl dl dd + dt {
  margin-top: 20px;
}
#order .block_dl dd p,
#support .block_dl dd p {
  margin-bottom: 10px;
}



.confirm #container h2 {
  margin-top: 0;
  margin-bottom: 5px;
  font-size: 18px;
  line-height: 1.4em;
}
.confirm #container p + p {
  margin-top: 0;
}
.confirm table p + h2 {
  margin-top: 10px;
}

@media screen and (max-width: 559px) {
  #order .block_license {
    display: block;
  }
  #order .block_license .select_box {
    width: 100%;
  }
  #order .block_license .chk_box,
  #order .block_license .link_txt {
    width: 100%;
    margin-top: 20px;
    margin-left: 0;
    text-align: left;
  }
  #order form .chk_box label {
    background-color: #f6f6f6;
  }
  #order .block_license .select_box option span {
    display: none;
  }
}





#support form .block_dl .chk_box {
  margin-top: 0;
}





.block_cloud .chk_box {
  margin-bottom: 10px;
  text-align: left;
}
.block_cloud ul li {
  display: flex;
  align-items: center;
  padding-bottom: 10px;
  border-bottom: 1px solid #eeeeee;
}
.block_cloud ul li span {
  display: block;
  width: 300px;
  margin-right: 20px;
  font-weight: 600;
  text-align: center;
}
.block_cloud .select_box {
  width: 100%;
}
.block_cloud .chk_box label {
  position: relative;
}
.block_cloud .chk_box input[type="checkbox"]:checked + span + span {
  position: absolute;
  top: 50%;
  left: 14em;
  transform: translateY(-50%);
  padding: 4px 20px;
  background-color: #e54b4b;
  border-radius: 6px;
  color: #ffffff;
  font-weight: 500;
}
.block_cloud .link_txt {
  margin-top: 20px;
  margin-bottom: 10px;
  margin-left: 30px;
  text-align: left;
}
@media screen and (max-width: 559px) {
  .block_cloud ul li {
    display: block;
  }
  .block_cloud ul li span {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
    text-align: left;
  }
  .block_cloud .chk_box input[type="checkbox"]:checked + span + span {
    position: static;
    transform: translateY(0);
    margin-top: 5px;
  }
  .block_cloud .link_txt {
    margin-left: 20px;
    margin-right: 20px;
  }
}


h2 .link_txt,
h3 .link_txt {
  margin-left: 20px;
  line-height: 1.6em;
}
h2 .link_txt a[target="_blank"],
h3 .link_txt a[target="_blank"] {
  font-size: 16px;
  font-weight: 400;
}
@media screen and (max-width: 559px) {
  h2 .link_txt,
  h3 .link_txt {
    display: block;
    margin-top: 10px;
    margin-left: 0;
  }
}

