
/* 共通パーツ
-------------------------------------------------- */
.p-medicare {
  padding: 0 0 25px;
  font-family: 'Noto Serif JP, Noto Sans, Inter';
}

html {
  scroll-behavior: smooth;
}

h1, p, dl, dt, dd {
  margin: 0;
}

img {
  width: 100%;
}

.flex {
  display: flex;
}

a:hover {
  opacity: 0.7;
}

.p-medicare form .btn_submit:hover {
  opacity: 0.7;
  cursor: pointer;
}
/* .p-medicare form .btn_submit:disabled {
  opacity: 0.4;
}
.p-medicare form .btn_submit:enabled:hover {
  opacity: 0.7;
  cursor: pointer;
} */

.p-medicare form .error_message {
  display: none;
}
.p-medicare form .error .error_message {
  display: block;
  color: red;
}

@media(min-width:751px) {
  .u-layout {
    width: 800px;
    margin: 0 auto;
  }

  .u-pc-no {
    display: none;
  }
}

@media(max-width:750px) {
  .u-layout {
    width: 88%;
    margin: 0 auto;
  }

  .u-sp-no {
    display: none;
  }
}


/* pcデザイン
-------------------------------------------------- */
@media(min-width:751px) {
  .p-medicare > .banner {
    position: fixed;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 500px;
    z-index: 99;
  }

  .p-medicare > .img-wrap {
    margin-bottom: 150px;
  }

  .p-medicare .img02 {
    position: relative;
  }
  .p-medicare .img02-02 {
    position: absolute;
    left: 9%;
    bottom: 8%;
    width: calc(664 / 800 * 100%);
  }

  .p-medicare .img12 {
    position: relative;
  }
  .p-medicare .img12 > .ancho-link {
    position: absolute;
    height: 1px;
    top: 1285px;
    left: 0;
    width: 100%;
  }
  .p-medicare .img14 {
    position: relative;
  }
  .p-medicare .img14-02 {
    position: absolute;
    left: 9%;
    top: 28%;
    width: calc(664 / 800 * 100%);
  }

  /* ------------------------------- */
  .p-medicare > form {
    margin-bottom: 150px;
  }

  .p-medicare > form > .contact_title {
    width: 400px;
    margin: 0 auto 40px auto;
  }

  /* ------------------------------- */
  .p-medicare > form > .item-wrap {
    width: 60%;
    margin: 0 auto 50px;
  }

  .p-medicare > form > .item-wrap > .item {
    margin-bottom: 15px;
  }

  .p-medicare > form > .item-wrap > .item:last-of-type {
    margin-bottom: 0;
  }

  .p-medicare > form > .item-wrap > .item > .item_title {
    margin-bottom: 7px;
    align-items: center;
  }

  .p-medicare > form > .item-wrap > .item > .item_title > .title_text {
    font-family: 'Inter';
    font-size: 16px;
    font-weight: 400;
  }

  .p-medicare > form > .item-wrap > .item .required {
    display: inline-block;
    margin-left: 8px;
    padding: 2px 12px;
    background-color: #4c87a8;
    border-radius: 15px;
    font-family: 'Inter';
    font-size: 12px;
    font-weight: 400;
    color: #FFFFFF;
  }

  /* ------------------------------- */
  .p-medicare > form > .item-wrap > .item > .item_discription > .discription_wrap {
    margin-bottom: 10px;
  }

  .p-medicare > form > .item-wrap > .item > .item_discription > .discription_wrap:last-of-type {
    margin-bottom: 0;
  }

  .p-medicare > form > .item-wrap > .item > .item_discription > .discription_wrap > .discription_title {
    margin-bottom: 7px;
    align-items: center;
  }

  .p-medicare > form > .item-wrap > .item > .item_discription > .discription_wrap > .discription_text {
    width: 100%;
    padding-left: 10px;
    line-height: 2.4;
    font-family: 'Inter';
    font-size: 16px;
    font-weight: 400;
    border: 1px solid #888888;
  }

  /* .error_message {
    display: none;
    margin-top: 3px;
    color: #A6211E;
    font-size: 12px;
  }
  
  .error .error_message {
    display: block;
  } */


  /* ------------------------------- */
  .p-medicare > form > .btn_submit {
    display: block;
    width: 300px;
    margin: 0 auto;
  }

  /* ------------------------------- */
  .p-medicare > footer {
    text-align: center;
  }

  .p-medicare footer > .text {
    margin-bottom: 10px;
    font-family: 'Noto Sans';
    font-size: 16px;
    font-weight: 400;
  }

  .p-medicare footer > .copyright {
    font-family: 'Noto Sans';
    font-size: 16px;
    font-weight: 400;
  }

}



/* spデザイン
-------------------------------------------------- */
@media(max-width:750px) {
  .p-medicare > .banner {
    position: fixed;
    bottom: 0;
    display: block;
    width: 100%;
    z-index: 99;
  }

  .p-medicare > .img-wrap {
    width: 100%;
    margin-bottom: 70px;
  }

  .p-medicare .img02 {
    position: relative;
  }
  .p-medicare .img02-02 {
    position: absolute;
    left: 9%;
    bottom: 8%;
    width: calc(664 / 800 * 100%);
  }

  .p-medicare .img12 {
    position: relative;
  }
  .p-medicare .img12 > .ancho-link {
    position: absolute;
    height: 1px;
    top: 625px;
    left: 0;
    width: 100%;
  }

  .p-medicare .img14 {
    position: relative;
  }
  .p-medicare .img14-02 {
    position: absolute;
    left: 9%;
    top: 28%;
    width: calc(664 / 800 * 100%);
  }

  /* ------------------------------- */
  .p-medicare > form {
    margin-bottom: 150px;
  }

  .p-medicare > form > .contact_title {
    width: 79%;
    margin: 0 auto 25px auto;
  }

  /* ------------------------------- */
  .p-medicare > form > .item-wrap {
    margin-bottom: 50px;
  }

  .p-medicare > form > .item-wrap > .item {
    margin-bottom: 15px;
  }

  .p-medicare > form > .item-wrap > .item:last-of-type {
    margin-bottom: 0;
  }

  .p-medicare > form > .item-wrap > .item > .item_title {
    margin-bottom: 7px;
    align-items: center;
  }

  .p-medicare > form > .item-wrap > .item > .item_title > .title_text {
    font-family: 'Inter';
    font-size: 16px;
    font-weight: 400;
  }

  .p-medicare > form > .item-wrap > .item .required {
    display: inline-block;
    margin-left: 8px;
    padding: 2px 12px;
    background-color: #4c87a8;
    border-radius: 15px;
    font-family: 'Inter';
    font-size: 12px;
    font-weight: 400;
    color: #FFFFFF;
  }

  /* ------------------------------- */
  .p-medicare > form > .item-wrap > .item > .item_discription > .discription_wrap {
    margin-bottom: 10px;
  }

  .p-medicare > form > .item-wrap > .item > .item_discription > .discription_wrap:last-of-type {
    margin-bottom: 0;
  }

  .p-medicare > form > .item-wrap > .item > .item_discription > .discription_wrap > .discription_title {
    margin-bottom: 7px;
    align-items: center;
  }

  .p-medicare > form > .item-wrap > .item > .item_discription > .discription_wrap > .discription_text {
    width: 100%;
    padding-left: 10px;
    line-height: 2.4;
    font-family: 'Inter';
    font-size: 16px;
    font-weight: 400;
    border: 1px solid #888888;
  }

  /* ------------------------------- */
  .p-medicare > form > .btn_submit {
    display: block;
    width: 100%;
    margin: 0 auto;
  }

  /* ------------------------------- */
  .p-medicare > footer {
    text-align: center;
  }

  .p-medicare footer > .text {
    margin-bottom: 10px;
    font-family: 'Noto Sans';
    font-size: 16px;
    font-weight: 400;
  }

  .p-medicare footer > .copyright {
    font-family: 'Noto Sans';
    font-size: 16px;
    font-weight: 400;
  }

}
