@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700,900&subset=japanese");
/* reset */
.red{
    color:red;
}
img {
  vertical-align: bottom;
  border: 0;
  width: 100%;
  height: auto; }

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 {
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  border: 0; }

html {
  line-height: 1; }

ol,
ul {
  list-style: none; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  vertical-align: top;
  font-weight: normal;
  font-size: 100%;
  line-height: 140%; }

table {
  border-spacing: 0;
  border-collapse: collapse; }

caption,
th,
td {
  font-weight: normal;
  text-align: left;
  vertical-align: middle; }

a img {
  border: none; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

html,
body {
  width: 100%;
  max-width: 100%;
  height: 100%; }

html {
  font-size: 62.5%; }

body {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 1.5em;
  line-height: 1.6;
  overflow-x: hidden;
  letter-spacing: .05em;
  color: #222;
  background: #f5f9f8;
  -webkit-text-size-adjust: 100%; }
  @media (max-width: 767px) {
    body {
      letter-spacing: .5px; } }

body,
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

p {
  font-size: 1.5rem;
  line-height: 1.75; }

button,
input[type='submit'],
input[type='button'] {
  cursor: pointer;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none; }

input[type='submit'],
input[type='button'] {
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
  border-radius: 5px;
  -webkit-box-shadow: 0px 4px 0px 0px #d02e2e;
  box-shadow: 0px 4px 0px 0px #d02e2e;
  border: 1px solid #EF6A6A;
  background: #EF6A6A; }
  @media (max-width: 767px) {
    input[type='submit'],
    input[type='button'] {
      width: 100%;
      font-size: 20px;
      padding: 0; } }

::-webkit-input-placeholder {
  /* WebKit, Blink, Edge */
  color: #acacac; }

:-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: #acacac; }

::-ms-input-placeholder {
  /* Others */
  color: #acacac; }

::placeholder {
  /* Others */
  color: #acacac; }

/* common */
.inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2%; }

/* header */
#header {
  background: #fff;
  -webkit-box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 999; }
  #header .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: 10px;
    padding-bottom: 10px; }
    #header .inner img {
      width: 204px; }
  #header .back_to_toppage {
    display: block;
    padding: 10px 20px;
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s;
    text-decoration: none;
    color: #fff;
    border-radius: 5px;
    -webkit-box-shadow: 0px 3px 0px 0px #d02e2e;
    box-shadow: 0px 3px 0px 0px #d02e2e;
    border: 1px solid #d02e2e;
    background: #EF6A6A; }
    #header .back_to_toppage:hover {
      opacity: .8; }
  @media (max-width: 767px) {
    #header .inner img {
      width: 168px;
      height: auto; }
    #header .back_to_toppage {
      font-size: 12px;
      padding: 8px 12px; } }

/* footer */
#footer {
  text-align: center;
  background: #1628ad; }
  #footer #copyright {
    font-size: 1.2rem;
    line-height: 48px;
    letter-spacing: 1px;
    color: #fff; }
    @media (max-width: 767px) {
      #footer #copyright {
        font-size: 1rem; } }

.wrap {
  width: 1200px;
  margin: 0 auto; }
  @media screen and (max-width: 1200px) {
    .wrap {
      width: 88%; } }

#wrap {
  position: relative;
  min-height: 100%;
  padding-bottom: 60px; }
  @media screen and (max-width: 767px) {
      #wrap {
        padding-bottom: 130px;
      }
    }
  #wrap #footer {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%; }
    @media screen and (max-width: 767px) {
      #wrap #footer{
        bottom: 57px;
      }
    }


#wrapper > .inner {
  padding-top: 80px;
  padding-bottom: 30px; }
  @media (max-width: 767px) {
    #wrapper > .inner {
      padding-top: 35px;
      padding-bottom: 20px; } }
  #wrapper > .inner.pt0 {
    padding-top: 0; }

/* form */
.warning {
  color: #f00; }

.form_title {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 3.4rem;
  letter-spacing: 0.05em;
  color: #1628ad;
  text-align: center; }
  @media (max-width: 767px) {
    .form_title {
      font-size: 3.2rem;
      margin-bottom: 15px; }
      .form_title.preview, .form_title.complete {
        margin-top: 30px; } }

.steps {
  position: relative;
  padding: 20px 212px;
  text-align: center;
  background: url("../images/easy.png") no-repeat left 20px; }
  .steps img {
    max-width: 100%; }
    .steps img.pc {
      display: inline; }
    .steps img.sp {
      display: none; }
  @media (max-width: 1000px) {
    .steps {
      padding: 15px 2vw 15px 22vw;
      background-size: 22vw auto; } }
  @media (max-width: 768px) {
    .steps {
      padding: 10px 2vw 0 24vw;
      background-size: 25vw auto; }
      .steps img.pc {
        display: none; }
      .steps img.sp {
        display: inline; } }

.wrap_form {
  margin: 20px 0;
  padding: 40px calc(2% + 24px);
  background: #fff;
  border: 1px solid #1628ad; }
  .wrap_form .step_text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 24px;
    border: 2px solid #1628ad; }
    .wrap_form .step_text > span {
      padding: 8px; }
    .wrap_form .step_text .step {
      font-size: 120%;
      font-weight: normal;
      margin-right: 16px;
      padding: 6px 12px;
      color: #fff;
      background: #1628ad; }
  @media (max-width: 767px) {
    .wrap_form {
      padding: 12px 4%; }
      .wrap_form .step_text {
        margin-bottom: 12px; }
        .wrap_form .step_text > span {
          font-size: 1.4rem; }
        .wrap_form .step_text .step {
          font-size: 1.4rem;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          margin-right: 0; } }
  .wrap_form .center {
    text-align: center; }
  .wrap_form .privacy {
    margin-top: 20px; }

.form_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .form_list dt,
  .form_list dd {
    padding: 24px;
    border-bottom: 1px dotted #1628ad; }
  .form_list dt {
    font-weight: bold;
    position: relative;
    width: 25%;
    color: #1628ad; }
    .form_list dt .required {
      font-size: 1.1rem;
      font-weight: 500;
      position: absolute;
      top: 24px;
      right: 10px;
      padding: 4px;
      color: #fff;
      background: #f00; }
    .form_list dt .no-required {
      font-size: 1.1rem;
      font-weight: 500;
      position: absolute;
      top: 24px;
      right: 10px;
      padding: 4px;
      color: #fff;
      background: #999; }
  .form_list dd {
    font-size: 1.7rem;
    line-height: 30px;
    width: 75%;
    border-left: 1px dotted #1628ad; }
    .form_list dd input,
    .form_list dd textarea,
    .form_list dd select,
    .form_list dd option {
      font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
      font-weight: 500; }
    .form_list dd input[type="text"],
    .form_list dd textarea {
      font-size: 1.6rem;
      display: block;
      width: 100%;
      margin: 2px 0;
      padding: 10px;
      outline: none; }
      .form_list dd input[type="text"]:focus,
      .form_list dd textarea:focus {
        background: #fffdf2; }
    .form_list dd input[name="tel[]"],
    .form_list dd input[name="zipcode[]"] {
      display: inline-block;
      width: inherit; }
    .form_list dd input[name="contact_name_sei"],
    .form_list dd input[name="contact_name_mei"],
    .form_list dd input[name="contact_name_sei_kana"],
    .form_list dd input[name="contact_name_mei_kana"] {
      display: inline-block;
      width: calc(100% - 48px);
      margin-left: 4px; }
    .form_list dd input[name="contact_name_sei"],
    .form_list dd input[name="contact_name_mei"] {
      margin-left: 18px; }
    .form_list dd.plan label {
      display: block; }
    .form_list dd .note {
      display: inline-block;
      margin: 3px 0; }
  .form_list.confirm_list dt,
  .form_list.confirm_list dd {
    padding: 20px 24px;
    border-left: 0; }
  @media (max-width: 767px) {
    .form_list {
      display: block; }
      .form_list dt,
      .form_list dd {
        width: 100%; }
      .form_list dt {
        padding: 20px 0 0;
        border-bottom: 0; }
        .form_list dt .required,
        .form_list dt .no-required {
          line-height: 1.2;
          top: 22px; }
      .form_list dd {
        padding: 8px 0 20px;
        border-left: 0; }
      .form_list.confirm_list dt {
        padding: 15px 8px 0; }
      .form_list.confirm_list dd {
        padding: 5px 8px 15px; } }

select[name="time"],
select[name="area"],
select[name="area_hall"] {
  padding: 3px;
  vertical-align: middle !important;
  line-height: 1.75;
  height: 38px; }

@media screen and (max-width: 767px) {
  select[name="area"],
  select[name="area_hall"] {
    width: 100%; }
  select[name="area_hall"] {
    margin-top: 15px; } }

.custom-control {
  padding-left: 2rem; }
  .custom-control.custom-control-inline {
    margin-right: 3rem; }
    @media (max-width: 767px) {
      .custom-control.custom-control-inline {
        margin-right: 2rem; } }
  #disp_envelope .custom-control .custom-control-label {
    display: block; }
  .custom-control .custom-control-label::before {
    top: 0.7rem;
    left: -2rem;
    width: 1.6rem;
    height: 1.6rem; }
  .custom-control .custom-control-label::after {
    top: 0.7rem;
    left: -2rem;
    width: 1.6rem;
    height: 1.6rem; }

#disp_envelope {
  margin-top: 8px;
  padding: 8px 12px;
  background: #f3f3f3; }

.mail-select-area .address-label {
  margin-top: 15px; }
  .mail-select-area .address-label:first-of-type {
    margin-top: 0; }

.zipcode-wrap input[type="text"] {
  display: inline-block !important;
  width: calc(50% - 15px) !important; }

.zipcode-wrap .btn-zipcode {
  font-size: 1.4rem;
  margin: 2px 0;
  padding: 10px 20px;
  color: #555;
  border: 1px solid #555;
  background: #f3f3f3; }

@media (max-width: 767px) {
  .zipcode-wrap input[type="text"] {
    width: 60% !important; }
  .zipcode-wrap .btn-zipcode {
    font-size: 1.1rem;
    width: 37%;
    padding: 5px 0; } }

.select-wrap {
  position: relative; }
  .select-wrap:after {
    font-size: 12px;
    line-height: 12px;
    position: absolute;
    z-index: 3;
    top: 20px;
    right: 12px;
    display: block;
    width: 12px;
    height: 12px;
    content: "▼"; }
  .select-wrap .select-custom {
    z-index: 2;
    width: 100%;
    padding: 10px;
    border: 1px solid #777;
    background: transparent;
    -webkit-appearance: none; }
    .select-wrap .select-custom:focus {
      background: #fffdf2; }

.ssl_text {
  margin-top: 30px;
  text-align: center; }
  @media (max-width: 767px) {
    .ssl_text {
      text-align: left; } }

.privacypolicy {
  overflow-y: scroll;
  height: 250px;
  margin-top: 30px;
  padding: 40px;
  border: 1px solid #dfdfdf;
  background: #fff; }
  .privacypolicy h4 {
    margin-top: 20px; }
  @media (max-width: 767px) {
    .privacypolicy {
      padding: 12px; } }

@media (max-width: 767px) {
  .privacy.center {
    text-align: left; } }

.privacy_check {
  margin-top: 10px;
  text-align: center; }

.btns_inquiry,
.btn_wrap {
  margin-top: 24px;
  text-align: center; }

.btn_submit,
.btn-confirm {
  font-size: 1.6rem;
  line-height: 60px;
  margin: 0 auto;
  padding: 4px 10px;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  text-align: center;
  letter-spacing: 0.1em;
  color: #fff;
  border: 1px solid #EF6A6A;
  background: #EF6A6A; }
  .btn_submit:hover,
  .btn-confirm:hover {
    color: #EF6A6A;
    background: #fff; }

.btn_submit,
.btn-confirm,
.btn_back {
  font-size: 26px;
  font-weight: bold;
  width: 90%;
  margin-top: 30px; }
  @media (max-width: 767px) {
    .btn_submit,
    .btn-confirm,
    .btn_back {
      font-size: 16px;
      margin-top: 20px; } }

.btn_close,
.btn_back {
  font-size: 2rem;
  line-height: 60px;
  margin: 0 auto;
  margin-right: 15px;
  padding: 4px 10px;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  text-align: center;
  letter-spacing: 0.1em;
  color: #EF6A6A;
  border: 1px solid #EF6A6A;
  background: #fff !important; }
  .btn_close:hover,
  .btn_back:hover {
    text-decoration: none;
    color: #fff;
    background: #EF6A6A !important; }

.btn_close {
  width: 200px; }

.btn_close {
  display: block;
  width: 280px;
  margin: 0 auto;
  margin-bottom: 20px;
  text-decoration: none; }

@media (max-width: 767px) {
  .btn-confirm {
    margin-bottom: 20px; }
  .btn_submit {
    width: 280px;
    margin-bottom: 20px; }
  .btn_back {
    width: 280px;
    margin-right: 0;
    margin-bottom: 15px; } }

@media (max-width: 700px) {
  .btns_inquiry {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
    .btns_inquiry .btn_submit {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1; }
    .btns_inquiry .btn_back {
      font-size: 1.4rem;
      line-height: 42px;
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2;
      width: 170px;
      margin: 0 auto 20px; } }

/* modal */
.modal .modal-dialog {
  width: 90%;
  max-width: 720px; }
  @media (max-width: 767px) {
    .modal .modal-dialog {
      margin-right: auto;
      margin-left: auto; } }

.modal .close {
  font-family: "Osaka-mono", "MS Gothic", "monospace";
  font-size: 24px;
  font-weight: normal;
  position: absolute;
  top: -20px;
  right: -20px;
  width: 48px;
  height: 48px;
  color: #fff;
  border-radius: 100%;
  background: #333; }
  @media (max-width: 767px) {
    .modal .close {
      top: -36px;
      opacity: 1; } }

.modal .modal-content {
  padding: 30px 30px 30px 32%;
  border-radius: 15px;
  background: #fff url("../images/tel_bnr.png") no-repeat 5% 30px; }
  .modal .modal-content .text {
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 24px; }
  .modal .modal-content .tel img {
    width: 100%;
    max-width: 420px; }
  .modal .modal-content .note {
    font-size: 1.3rem;
    margin-top: 10px;
    color: #d50000; }
  @media (max-width: 767px) {
    .modal .modal-content {
      padding: 20px 10px;
      background-image: none; }
      .modal .modal-content .text {
        font-size: 3.8vw;
        position: relative;
        padding-left: 17vw; }
        .modal .modal-content .text:before {
          position: absolute;
          top: -2.5vw;
          left: -2vw;
          display: block;
          width: 17vw;
          height: 17vw;
          content: "";
          background: url("../images/tel_bnr.png") no-repeat 0 0;
          background-size: contain; }
      .modal .modal-content .tel {
        text-align: center; }
      .modal .modal-content .note {
        font-size: 1.1rem;
        text-align: center; } }

/* complete */
.complete h3 {
  font-size: 2.8rem;
  margin: 10px 0 24px;
  text-align: center;
  color: #ca524b; }
  .complete h3 br {
    display: none; }

@media (max-width: 767px) {
  .complete h3 {
    font-size: 2.4rem; }
    .complete h3 br {
      display: block; } }

.fa-check-circle {
  color: #999;
  margin-left: 10px; }

.fa-check-circle.check {
  color: #EF6A6A; }

.remainingItems {
  font-size: 18px;
  font-weight: bold;
  position: fixed;
  z-index: 100;
  right: 8vw;
  bottom: 30px;
  padding: 10px 50px;
  text-align: center;
  color: #1628ad;
  border: 2px solid #1628ad;
  background: rgba(255, 255, 255, 0.8); }
  @media (max-width: 767px) {
    .remainingItems {
      font-size: 16px;
      right: 0;
      bottom: 0;
      width: 100%;
      padding: 5px 0 10px;
      border-bottom: 0;
      border-radius: 20px 20px 0 0;
      background: rgba(255, 255, 255, 0.95); } }
  .remainingItems__number {
    font-size: 45px;
    display: block; }
    @media (max-width: 767px) {
      .remainingItems__number {
        font-size: 25px;
        display: inline-block;
        margin-left: 20px; } }
  .remainingItems__slash {
    font-size: 30px; }
    @media (max-width: 767px) {
      .remainingItems__slash {
        font-size: 16px; } }
  .remainingItems__denominator {
    font-size: 20px; }
    @media (max-width: 767px) {
      .remainingItems__denominator {
        font-size: 16px; } }

.delivery-date {
  font-size: 28px;
  margin: 40px 0 30px;
  text-align: center; }
  @media (max-width: 767px) {
    .delivery-date {
      font-size: 21px; } }
  .delivery-date__border {
    position: relative;
    display: inline-block;
    margin: 0 15px; }
    @media (max-width: 767px) {
      .delivery-date__border {
        display: block; } }
    .delivery-date__border:after {
      position: absolute;
      bottom: -5px;
      display: block;
      width: 100%;
      height: 2px;
      content: "";
      background: #1628ad; }
      @media (max-width: 767px) {
        .delivery-date__border:after {
          content: none; } }
  .delivery-date .fz-big {
    font-size: 40px; }

.attention-txt {
  width: 767px;
  margin: 0 auto 55px;
  padding: 30px 50px;
  border: 1px solid red;
  background: #fff; }
  @media (max-width: 767px) {
    .attention-txt {
      width: 96%;
      margin: 0 2% 30px;
      padding: 15px 10px; } }
  .attention-txt__h {
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    color: red; }
    @media (max-width: 767px) {
      .attention-txt__h {
        font-size: 20px; } }
    .attention-txt__h .fas {
      margin-right: 10px; }
      @media (max-width: 767px) {
        .attention-txt__h .fas {
          margin-right: 5px; } }
  .attention-txt__sub {
    font-size: 18px; }
    @media (max-width: 767px) {
      .attention-txt__sub {
        font-size: 16px; } }
    .attention-txt__sub .fw-b {
      font-weight: bold; }
  .attention-txt__tel-box {
    font-weight: bold;
    margin-top: 25px;
    text-align: center; }
    @media (max-width: 767px) {
      .attention-txt__tel-box {
        margin-top: 30px; } }
    .attention-txt__tel-box .txt {
      font-size: 20px;
      margin-bottom: -7px; }
      @media (max-width: 767px) {
        .attention-txt__tel-box .txt {
          font-size: 18px;
          margin-bottom: -2px; } }
    .attention-txt__tel-box .img img {
      position: relative;
      top: 9px;
      margin-left: 10px; }
      @media (max-width: 767px) {
        .attention-txt__tel-box .img img {
          top: 4px;
          margin-left: 0; } }
    .attention-txt__tel-box .img a {
      font-size: 35px;
      text-decoration: underline;
      color: #1628ad; }
      @media (max-width: 767px) {
        .attention-txt__tel-box .img a {
          font-size: 25px; } }
    .attention-txt__tel-box .img .fas {
      font-size: 35px;
      margin-right: 10px; }
      @media (max-width: 767px) {
        .attention-txt__tel-box .img .fas {
          font-size: 25px;
          margin-right: 5px; } }

@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none; } }

.gnavPC {
  -webkit-box-shadow: none;
  box-shadow: none; }

header {
  -webkit-box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.1); }

@media (max-width: 768px) {
  header {
    -webkit-box-shadow: none;
    box-shadow: none; } }

a {
  color: #242222; }

dl,
ol,
ul {
  margin-top: 0;
  margin-bottom: 0; }

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-bottom: 0; }

.link_border {
  text-decoration: underline;
  color: #1628ad; }

.breadcrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 10px 0 40px;
  margin-bottom: 0rem;
  list-style: none;
  background: none;
  border-radius: 0; }

.breadcrumb__item {
  font-size: 1.2rem;
  padding: 3px 0.5em 3px 0; }
  .breadcrumb__item a {
    color: #1628ad;
    text-decoration: underline;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
  .breadcrumb__item::after {
    content: "/";
    margin-left: 0.5em; }
  .breadcrumb__item:last-child {
    padding-right: 0; }
    .breadcrumb__item:last-child::after {
      content: none;
      margin-left: 0; }

.section-ttl {
  font-size: 3.8rem;
  letter-spacing: 0.05em;
  color: #333;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .section-ttl {
      font-size: 3rem;
      -webkit-font-feature-settings: "palt";
      font-feature-settings: "palt"; } }

.section-ttl + * {
  margin-top: 45px; }
  @media screen and (max-width: 768px) {
    .section-ttl + * {
      margin-top: 30px; } }

.ta-center {
  text-align: center; }

.bg-color-main {
  background-color: #f5f9f8; }

#consulation01 {
  padding: 0px 0 60px;
  background: #fff; }
  @media screen and (max-width: 768px) {
    #consulation01 {
      padding: 0px 0 30px; } }
  #consulation01 .read-txt {
    font-size: 28px;
    color: #1628ad;
    font-weight: normal;
    margin-bottom: 30px; }
    @media screen and (max-width: 768px) {
      #consulation01 .read-txt {
        font-size: 20px;
        margin-bottom: 10px; } }
    @media screen and (max-width: 520px) {
      #consulation01 .read-txt {
        font-size: 18px; } }

.consulation02 {
  padding: 70px 0 70px; }
  @media screen and (max-width: 768px) {
    .consulation02 {
      padding: 55px 0 50px; } }

#consulation03 {
  padding: 70px 0 70px;
  background-color: #fff; }
  @media screen and (max-width: 768px) {
    #consulation03 {
      padding: 55px 0 50px; } }

.consulation-flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 80px; }
  @media screen and (max-width: 768px) {
    .consulation-flow {
      margin-top: 45px; } }
  .consulation-flow > li {
    width: 23%; }
    @media screen and (max-width: 768px) {
      .consulation-flow > li {
        width: 100%; }
        .consulation-flow > li:not(:first-of-type) {
          margin-top: 23px; } }
  .consulation-flow__step {
    width: calc(100% - 20px);
    background: #1628ad;
    color: #fff;
    position: relative;
    text-align: center;
    line-height: 42px;
    margin-bottom: 17px; }
    @media screen and (max-width: 768px) {
      .consulation-flow__step {
        width: calc(100% - 20px);
        line-height: 34px;
        margin-bottom: 10px; } }
    .consulation-flow__step::after {
      content: "";
      width: 0;
      height: 0;
      position: absolute;
      right: -19.99px;
      top: 0;
      border-style: solid;
      border-width: 21px 0 21px 20px;
      border-color: transparent transparent transparent #1628ad; }
      @media screen and (max-width: 768px) {
        .consulation-flow__step::after {
          right: -19.5px;
          border-width: 17px 0 17px 20px; } }
  .consulation-flow__cont {
    background: #fff;
    padding: 20px 25px;
    min-height: 405px;
    -webkit-box-shadow: 3px 3px 0 #ccc;
    box-shadow: 3px 3px 0 #ccc; }
    @media screen and (max-width: 768px) {
      .consulation-flow__cont {
        min-height: 0px;
        padding: 20px 20px 10px; } }
  .consulation-flow__img {
    text-align: center; }
    .consulation-flow__img img {
      width: 80%; }
  .consulation-flow__ttl {
    font-size: 20px;
    text-align: center;
    margin: 25px auto 15px; }
    @media screen and (max-width: 768px) {
      .consulation-flow__ttl {
        margin: 20px auto 5px; } }

@media screen and (max-width: 576px) {
  .col-xs-6 {
    width: 50% !important; }
    .col-xs-6.pl {
      padding-right: 0 !important; }
    .col-xs-6.pr {
      padding-left: 0 !important; } }

#sideBtn,
#fixedBtn {
  display: none !important; }

#pagetop {
  bottom: 160px !important; }
  @media (max-width: 768px) {
    #pagetop {
      bottom: 80px !important; } }

[v-cloak] {
  display: none !important; }

footer {
  margin-bottom: 0 !important; }

.remainingItems.hide {
  display: none; }

/* IE11 css hack */
_:-ms-lang(x)::-ms-backdrop,
.remainingItems {
  display: none; }

_:-ms-lang(x)::-ms-backdrop,
.fa-check-circle {
  display: none !important; }

_:-ms-lang(x)::-ms-backdrop,
.prefcode_city {
  display: none; }

_:-ms-lang(x)::-ms-backdrop,
.btn-zipcode {
  display: none; }

_:-ms-lang(x)::-ms-backdrop,
.IE-on {
  display: initial; }

.IE-off {
  display: none; }

_:-ms-lang(x)::-ms-backdrop,
a[href^="tel:"] {
  display: inline-block;
  pointer-events: none; }

@media screen and (min-width: 769px) {
  .pc_hide {
    display: none !important; } }

@media screen and (max-width: 768px) {
  .smart_hide {
    display: none !important; } }

.media-text {
  margin-top: 45px;
  counter-reset: number 0; }
  .media-text__item {
    position: relative;
    margin-top: 70px; }
    .media-text__item:first-of-type {
      margin-top: 0; }
    @media (max-width: 1024px) {
      .media-text__item {
        padding-top: 50%; } }
    @media screen and (max-width: 768px) {
      .media-text__item {
        margin-top: 40px; } }
  .media-text__img {
    width: 55%;
    min-width: 660px; }
    @media (max-width: 1024px) {
      .media-text__img {
        position: absolute;
        top: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        margin: 0 auto; } }
    @media screen and (max-width: 768px) {
      .media-text__img {
        width: 100%;
        min-width: inherit; } }
  .media-text__txt {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 50%;
    padding: 30px;
    background: rgba(255, 255, 255, 0.9);
    -webkit-box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.1); }
    .media-text__txt::before {
      counter-increment: number 1;
      content: counter(number);
      position: absolute;
      top: -20px;
      left: -20px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      width: 90px;
      height: 90px;
      border-radius: 50%;
      background-color: #1628ad;
      font-size: 3rem;
      font-weight: 500;
      color: #ffffff;
      text-align: center;
      -webkit-box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.1);
      box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.1); }
      @media screen and (max-width: 768px) {
        .media-text__txt::before {
          width: 70px;
          height: 70px;
          font-size: 2.4rem; } }
    @media (max-width: 1024px) {
      .media-text__txt {
        position: relative;
        top: 0;
        left: 0;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
        width: 90%;
        margin: 0 auto; } }
    @media screen and (max-width: 768px) {
      .media-text__txt {
        padding: 20px; } }
  .media-text__ttl {
    position: relative;
    padding: 0 0 25px 55px;
    font-size: 2.8rem;
    border-bottom: 1px solid #eeeeee; }
    .media-text__ttl + * {
      margin-top: 20px; }
      @media screen and (max-width: 768px) {
        .media-text__ttl + * {
          margin-top: 15px; } }
    @media screen and (max-width: 768px) {
      .media-text__ttl {
        font-size: 2.2rem;
        padding-bottom: 20px;
        padding-left: 45px; } }
  .media-text__item:nth-child(even) .media-text__img {
    margin-left: auto; }
  .media-text__item:nth-child(even) .media-text__txt {
    left: 0; }
