/* ==============================
- less setting
============================== */
.box-sizing {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.font-icon {
  display: inline-block;
  font-family: 'Font Awesome 5 Free';
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.fas {
  font-weight: 900;
}
.float-clear {
  clear: both;
  content: '';
  display: block;
}
.translateY47 {
  -o-transform: translateY(-47%);
     transform: translateY(-47%);
  -webkit-transform: translateY(-47%);
  -ms-transform: translateY(-47%);
}
/* flex関連
---------------------*/
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.flex-direction_column {
  -webkit-box-direction: vertical;
  -webkit-box-orient: vertical;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
}
.justify-content_space-between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
/* color
---------------------*/
/* gradation
---------------------*/
.backgara-base {
  background: #64b1ed;
  background: -webkit-linear-gradient(top, #64b1ed 0%, #0268cd 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#64b1ed), to(#0268cd));
  background: -o-linear-gradient(top, #64b1ed 0%, #0268cd 100%);
  background: linear-gradient(to bottom, #64b1ed 0%, #0268cd 100%);
}
.backgara-green {
  border: 1px solid #5CAE1A;
  -webkit-box-shadow: 1px 1px 0 rgba(255, 255, 255, 0.8) inset;
          box-shadow: 1px 1px 0 rgba(255, 255, 255, 0.8) inset;
  background: #5cae1a;
  background: -webkit-linear-gradient(top, #5cae1a 0%, #ffffff 2%, #c2e2a5 4%, #8dc956 33%, #80c343 42%, #75be32 53%, #75be32 98%, #5cae1a 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#5cae1a), color-stop(2%, #ffffff), color-stop(4%, #c2e2a5), color-stop(33%, #8dc956), color-stop(42%, #80c343), color-stop(53%, #75be32), color-stop(98%, #75be32), to(#5cae1a));
  background: -o-linear-gradient(top, #5cae1a 0%, #ffffff 2%, #c2e2a5 4%, #8dc956 33%, #80c343 42%, #75be32 53%, #75be32 98%, #5cae1a 100%);
  background: linear-gradient(to bottom, #5cae1a 0%, #ffffff 2%, #c2e2a5 4%, #8dc956 33%, #80c343 42%, #75be32 53%, #75be32 98%, #5cae1a 100%);
}
.backgara-orange {
  background: #ffc082;
  background: -webkit-linear-gradient(top, #ffc082 0%, #feb568 24%, #ff9a35 59%, #ff9629 65%, #ff9528 68%, #ff870d 86%, #fe8101 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#ffc082), color-stop(24%, #feb568), color-stop(59%, #ff9a35), color-stop(65%, #ff9629), color-stop(68%, #ff9528), color-stop(86%, #ff870d), to(#fe8101));
  background: -o-linear-gradient(top, #ffc082 0%, #feb568 24%, #ff9a35 59%, #ff9629 65%, #ff9528 68%, #ff870d 86%, #fe8101 100%);
  background: linear-gradient(to bottom, #ffc082 0%, #feb568 24%, #ff9a35 59%, #ff9629 65%, #ff9528 68%, #ff870d 86%, #fe8101 100%);
}
.backgara-white {
  background: #ffffff;
  background: -webkit-linear-gradient(top, #ffffff 0%, #fbfbfb 24%, #f4f4f4 49%, #f4f4f4 57%, #f0f0f0 62%, #e8e8e8 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(24%, #fbfbfb), color-stop(49%, #f4f4f4), color-stop(57%, #f4f4f4), color-stop(62%, #f0f0f0), to(#e8e8e8));
  background: -o-linear-gradient(top, #ffffff 0%, #fbfbfb 24%, #f4f4f4 49%, #f4f4f4 57%, #f0f0f0 62%, #e8e8e8 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #fbfbfb 24%, #f4f4f4 49%, #f4f4f4 57%, #f0f0f0 62%, #e8e8e8 100%);
}
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  color: #404040;
  font-size: 13px;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
body {
  line-height: 1.5;
  position: relative;
}
body,
div,
dl,
dt,
dd,
ul,
li,
ol,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
button,
textarea,
p,
blockquote,
th,
td,
section,
nav,
article,
aside,
header,
address,
figure,
figcaption {
  margin: 0;
  padding: 0;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
li {
  list-style-type: none;
}
input[type="text"],
input[type="tel"],
input[type="mail"],
input[type="password"],
select {
  border: 1px solid #CCC;
  background: #FFF;
  padding: 5px;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media screen and (max-width: 768px) {
  input[type="text"],
  input[type="tel"],
  input[type="mail"],
  input[type="password"],
  select {
    height: 40px;
  }
}
@media screen and (min-width: 769px) {
  input[type="text"],
  input[type="tel"],
  input[type="mail"],
  input[type="password"],
  select {
    height: 30px;
    line-height: 30px;
  }
}
.SelectBox {
  display: inline-block;
  position: relative;
}
.SelectBox:after {
  content: "\f078";
  display: inline-block;
  font-family: 'Font Awesome 5 Free';
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 10px;
  -o-transform: translateY(-47%);
     transform: translateY(-47%);
  -webkit-transform: translateY(-47%);
  -ms-transform: translateY(-47%);
}
.SelectBox select {
  width: 100%;
  padding: 0 30px 0 5px;
}
/*************************
layout
*************************/
@media screen and (min-width: 737px) {
  .Main {
    width: 950px;
    margin: 20px auto;
    padding: 0 20px;
    background: #FFF;
  }
}
/*************************
ヘッダー
*************************/
header .HdInner {
  margin: auto;
  border-bottom: 1px solid #CCC;
}
@media screen and (min-width: 769px) {
  header .HdInner {
    width: 950px;
    padding: 10px 0 5px;
  }
}
@media screen and (max-width: 768px) {
  header .HdInner {
    padding: 10px 10px 5px 10px;
    margin-bottom: 15px;
  }
}
header .HdInner .Logo {
  display: inline-block;
}
header .HdInner .Logo a {
  display: block;
}
/*************************
フッター
*************************/
footer .FoInner {
  margin: auto;
}
@media screen and (min-width: 769px) {
  footer .FoInner {
    width: 950px;
    padding: 10px 0 0;
  }
}
footer .pagetop {
  text-align: right;
}
@media screen and (max-width: 768px) {
  footer .pagetop {
    padding: 0 10px;
  }
}
footer .inner {
  border-top: 6px solid #000;
}
@media screen and (min-width: 769px) {
  footer .inner {
    padding: 20px 60px;
  }
}
@media screen and (max-width: 768px) {
  footer .inner {
    padding: 10px 10px 0;
  }
}
footer .inner .info_dj {
  border: 5px solid #CCC;
}
@media screen and (min-width: 769px) {
  footer .inner .info_dj {
    padding: 20px;
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 768px) {
  footer .inner .info_dj {
    padding: 10px;
    margin: 0 0 10px;
  }
}
footer .inner .info_dj:after {
  clear: both;
  content: '';
  display: block;
}
@media screen and (min-width: 769px) {
  footer .inner .info_dj .fLogo {
    width: 180px;
    float: left;
  }
}
footer .inner .info_dj .fLogo a {
  display: block;
}
footer .inner .info_dj .fLogo a img {
  display: block;
}
@media screen and (max-width: 768px) {
  footer .inner .info_dj .fLogo a img {
    margin: auto;
  }
}
@media screen and (min-width: 769px) {
  footer .inner .info_dj .fInfo {
    width: 580px;
    float: right;
  }
}
@media screen and (min-width: 769px) {
  footer .inner .info_dj .fInfo li {
    font-size: 14px;
    line-height: 2.3em;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  footer .inner .info_dj .fInfo li {
    margin: 0 0 5px;
  }
}
@media screen and (max-width: 768px) {
  footer .inner .info_dj .fInfo li:last-of-type {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  footer .inner .info_dj .fInfo li strong {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  footer .inner .menuRightBox {
    margin: 0 0 10px;
  }
}
footer .inner .menuRightBox:after {
  clear: both;
  content: '';
  display: block;
}
footer .inner .menuRightBox .pict {
  float: left;
}
footer .inner .menuRightBox h4 {
  text-align: center;
}
@media screen and (min-width: 769px) {
  footer .inner .menuRightBox h4 {
    margin: 0 0 5px;
  }
}
footer .inner .menuRightBox .text {
  text-align: center;
}
@media screen and (max-width: 768px) {
  footer .inner .menuRightBox .text {
    width: 65%;
    float: right;
  }
}
footer .copy {
  background: #000;
  text-align: center;
  color: #FFF;
  padding: 3px 0;
  font-size: 10px;
}
/*************************
STEP
*************************/
.stepBar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  width: 100%;
  table-layout: fixed;
  margin: 0 0 15px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .stepBar {
    margin-top: 15px;
  }
}
@media screen and (min-width: 769px) {
  .stepBar {
    -webkit-box-shadow: 0px 7px 8px -6px rgba(171, 168, 168, 0.91);
            box-shadow: 0px 7px 8px -6px rgba(171, 168, 168, 0.91);
  }
}
.stepBar .step {
  width: 100%;
  position: relative;
  color: #808080;
  background: #ffffff;
  background: -webkit-linear-gradient(top, #ffffff 0%, #fbfbfb 24%, #f4f4f4 49%, #f4f4f4 57%, #f0f0f0 62%, #e8e8e8 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(24%, #fbfbfb), color-stop(49%, #f4f4f4), color-stop(57%, #f4f4f4), color-stop(62%, #f0f0f0), to(#e8e8e8));
  background: -o-linear-gradient(top, #ffffff 0%, #fbfbfb 24%, #f4f4f4 49%, #f4f4f4 57%, #f0f0f0 62%, #e8e8e8 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #fbfbfb 24%, #f4f4f4 49%, #f4f4f4 57%, #f0f0f0 62%, #e8e8e8 100%);
  -webkit-box-shadow: 0px 0px 0px 1px #CCC inset;
          box-shadow: 0px 0px 0px 1px #CCC inset;
}
@media screen and (max-width: 768px) {
  .stepBar .step {
    padding: 3px;
  }
}
@media screen and (min-width: 769px) {
  .stepBar .step {
    line-height: 40px;
    height: 40px;
  }
}
@media screen and (min-width: 769px) {
  .stepBar .step:before,
  .stepBar .step:after {
    position: absolute;
    left: -14px;
    display: block;
    content: '';
    background: #EEE;
    border-left: 1px solid #CCC;
    width: 20px;
    height: 20px;
  }
}
@media screen and (min-width: 769px) {
  .stepBar .step:before {
    bottom: 0;
    -webkit-transform: skew(-30deg);
    -ms-transform: skew(-30deg);
     -o-transform: skew(-30deg);
        transform: skew(-30deg);
    border-bottom: 1px solid #CCC;
  }
}
@media screen and (min-width: 769px) {
  .stepBar .step:after {
    top: 0;
    -webkit-transform: skew(30deg);
    -ms-transform: skew(30deg);
     -o-transform: skew(30deg);
        transform: skew(30deg);
    background: #FFF;
    border-top: 1px solid #CCC;
    background: -webkit-linear-gradient(top, #ffffff 0%, #fbfbfb 67%, #f4f4f4 90%, #f4f4f4 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(67%, #fbfbfb), color-stop(90%, #f4f4f4), to(#f4f4f4));
    background: -o-linear-gradient(top, #ffffff 0%, #fbfbfb 67%, #f4f4f4 90%, #f4f4f4 100%);
    background: linear-gradient(to bottom, #ffffff 0%, #fbfbfb 67%, #f4f4f4 90%, #f4f4f4 100%);
    border-top: 1px solid #ccc;
  }
}
.stepBar .step:first-of-type {
  border-radius: 2px 0 0 2px;
  -moz-border-radius: 2px 0 0 2px;
  -webkit-border-radius: 2px 0 0 2px;
}
.stepBar .step:first-of-type:before,
.stepBar .step:first-of-type:after {
  display: none;
}
.stepBar .step.current {
  color: #FFF;
  background: #ffc082;
  background: -webkit-linear-gradient(top, #ffc082 0%, #feb568 24%, #ff9a35 59%, #ff9629 65%, #ff9528 68%, #ff870d 86%, #fe8101 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#ffc082), color-stop(24%, #feb568), color-stop(59%, #ff9a35), color-stop(65%, #ff9629), color-stop(68%, #ff9528), color-stop(86%, #ff870d), to(#fe8101));
  background: -o-linear-gradient(top, #ffc082 0%, #feb568 24%, #ff9a35 59%, #ff9629 65%, #ff9528 68%, #ff870d 86%, #fe8101 100%);
  background: linear-gradient(to bottom, #ffc082 0%, #feb568 24%, #ff9a35 59%, #ff9629 65%, #ff9528 68%, #ff870d 86%, #fe8101 100%);
  box-shadow: 0px 0px 0px 1px #e88028 inset;
  -moz-box-shadow: 0px 0px 0px 1px #e88028 inset;
  -webkit-box-shadow: 0px 0px 0px 1px #e88028 inset;
}
.stepBar .step.current:before {
  border-bottom: 1px solid #e88028;
  background: #ffc082;
  background: -webkit-linear-gradient(top, #ff9a35 0%, #ff9629 65%, #ff9528 68%, #ff870d 86%, #fe8101 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#ff9a35), color-stop(65%, #ff9629), color-stop(68%, #ff9528), color-stop(86%, #ff870d), to(#fe8101));
  background: -o-linear-gradient(top, #ff9a35 0%, #ff9629 65%, #ff9528 68%, #ff870d 86%, #fe8101 100%);
  background: linear-gradient(to bottom, #ff9a35 0%, #ff9629 65%, #ff9528 68%, #ff870d 86%, #fe8101 100%);
}
.stepBar .step.current:after {
  border-top: 1px solid #e88028;
  background: #ffc082;
  background: -webkit-linear-gradient(top, #ffc082 0%, #feb568 53%, #ff9a35 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#ffc082), color-stop(53%, #feb568), to(#ff9a35));
  background: -o-linear-gradient(top, #ffc082 0%, #feb568 53%, #ff9a35 100%);
  background: linear-gradient(to bottom, #ffc082 0%, #feb568 53%, #ff9a35 100%);
}
.stepBar .step span {
  display: inline-block;
  vertical-align: middle;
}
.stepBar .step .caption {
  font-weight: bold;
  letter-spacing: 1px;
}
@media screen and (min-width: 769px) {
  .stepBar .step .caption {
    font-size: 16px;
  }
}
@media screen and (min-width: 769px) {
  .stepBar .step .number {
    font-size: 30px;
  }
}
.stepBar .step .title {
  font-weight: bold;
  letter-spacing: 1px;
}
@media screen and (max-width: 768px) {
  .stepBar .step .title {
    display: block;
  }
}
@media screen and (min-width: 769px) {
  .stepBar .step .title {
    font-size: 16px;
    padding: 0 0 0 10px;
  }
}
.Required {
  display: inline-block;
  color: #F00;
  padding: 0 0 0 5px;
}
.Attn {
  display: block;
  padding: 5px 0 0;
}
.Alert {
  display: inline-block;
  width: 100%;
  padding: 5px;
  color: #FFF;
  background: #F41346;
  margin: 5px 0 0;
}
.Alert:empty {
  display: none;
}
