@charset "UTF-8";
/* Sassでpxからvwへの変換式を定義して使う */
.pc_vw {
  font-size: 1.11111vw;
  /* font-size: 1.111vw; */
}

.sp_vw {
  font-size: 4.26667vw;
  /* font-size: 4.267vw; */
}

/* 
html{font-size: 62.5%}を基準とする
10px＝1remとする方法でフォントサイズの指定（16pxなら1.6remの指定）
コンパイル結果が「1.6rem」といった数値になるようにして頂きたい
*/
html {
  font-size: 62.5%;
}

/* フォントサイズ rem用関数 */
.pc_rem {
  font-size: 2rem;
  /* font-size: 2rem; */
}

.sp_rem {
  font-size: 1.4rem;
  /* font-size: 1.4rem; */
}

/* breadcrumb */
@media print, screen and (max-width: 768px) {
  .breadcrumb {
    padding: 5.33333vw 0 0;
  }
}

/* check */
.check-wrap {
  width: 85vw;
  margin: 0 auto;
  padding: 2.08333vw 0;
}

.check-ttl {
  padding: 4.16667vw 0;
  font-size: 3.5rem;
  font-weight: bold;
  line-height: 1.22;
  letter-spacing: 0.125vw;
  border-bottom: 0.13889vw solid #118195;
  color: #332020;
}

.check-inner {
  width: 85vw;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  padding: 4.16667vw 0;
}

@media print, screen and (max-width: 768px) {
  .check-wrap {
    width: 100%;
    padding: 0 2.66667vw 5.33333vw;
  }
  .check-ttl {
    padding: 5.33333vw 0;
    font-size: 2.2rem;
    letter-spacing: 1.6;
    border-bottom: 0.26667vw solid #118195;
  }
  .check-inner {
    display: block;
    width: 100%;
    margin: 5.33333vw 0;
    padding: 0;
  }
}

/* check-main */
.check-main {
  width: 57.77778vw;
}

.check-main h2 {
  padding: 1.04167vw 1.38889vw;
  background-color: #118195;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: left;
  color: #fff;
}

.check-main table {
  width: 100%;
}

.check-main tr {
  border-bottom: 0.13889vw solid #d5e2e3;
}

.check-main th {
  padding: 2.08333vw 0 2.08333vw 2.08333vw;
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: 0.07639vw;
  text-align: left;
  vertical-align: middle;
}

.check-main td {
  padding: 2.08333vw 0;
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: 0.07639vw;
  text-align: right;
  vertical-align: middle;
}

.check-button {
  margin: 4.16667vw auto;
  padding: 2.08333vw 0;
  background-color: #fff5f7;
}

.check-button button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 27.77778vw;
  height: 4.51389vw;
  margin: 0 auto;
  border-radius: 0.55556vw;
  background-color: #C32E52;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.13;
  color: #fff;
  cursor: pointer;
}

.check-button button:after {
  margin-left: 0.34722vw;
  content: "";
  width: 1.45833vw;
  height: 1.45833vw;
  background: url(../img/arrow_circle_w.png) no-repeat;
  background-size: cover;
}

.check-button button:hover {
  opacity: .8;
}

@media print, screen and (max-width: 768px) {
  .check-main {
    width: 100%;
  }
  .check-main h2 {
    padding: 2.66667vw 4vw;
    font-size: 1.8rem;
  }
  .check-main tr {
    border-bottom: 0.26667vw solid #d5e2e3;
  }
  .check-main th {
    padding: 2.66667vw 0;
    font-size: 1.6rem;
    letter-spacing: 0.26667vw;
  }
  .check-main td {
    padding: 2.66667vw 0;
    font-size: 1.6rem;
    letter-spacing: 0.26667vw;
  }
  .check-button {
    margin: 8vw auto;
    padding: 8vw 0;
  }
  .check-button button {
    width: 80vw;
    height: 16vw;
    border-radius: 1.6vw;
    font-size: 2rem;
  }
  .check-button button:after {
    margin-left: 1.33333vw;
    width: 5.33333vw;
    height: 5.33333vw;
    background: url(../img/arrow_circle_w.png) no-repeat;
    background-size: cover;
  }
}

.check-comp {
  margin-top: 4.16667vw;
  padding: 2.29167vw 4.16667vw 4.16667vw;
  border: solid 0.13889vw #118195;
  background-color: #f4fdff;
}

.check-txt {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2.77778vw;
}

.check-txt img {
  width: 9.44444vw;
}

.check-comp h3 {
  font-size: 4rem;
  font-weight: bold;
  text-align: left;
  color: #118195;
}

.check-comp p {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.06944vw;
  text-align: left;
}

.check-link {
  margin-top: 2.77778vw;
}

.check-link a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 27.77778vw;
  height: 4.51389vw;
  margin: 0 auto;
  border-radius: 0.55556vw;
  background-color: #118195;
  font-size: 2.3rem;
  font-weight: bold;
  line-height: 1.13;
  color: #fff;
}

.check-link a:after {
  margin-left: 0.34722vw;
  content: "";
  width: 1.45833vw;
  height: 1.45833vw;
  background: url(../img/arrow_circle_w.png) no-repeat;
  background-size: cover;
}

.check-link a:hover {
  opacity: .8;
}

@media print, screen and (max-width: 768px) {
  .check-comp {
    margin: 4vw 0 5.33333vw;
    padding: 9.33333vw 6.66667vw;
    border: solid 0.26667vw #118195;
  }
  .check-txt {
    margin-bottom: 5.33333vw;
  }
  .check-txt img {
    width: 22.93333vw;
  }
  .check-comp h3 {
    font-size: 2.2rem;
  }
  .check-comp p {
    font-size: 1.6rem;
    letter-spacing: 0.26667vw;
  }
  .check-link {
    margin-top: 5.33333vw;
  }
  .check-link a {
    width: 80vw;
    height: 16vw;
    border-radius: 1.6vw;
    font-size: 1.8rem;
  }
  .check-link a:after {
    margin-left: 1.33333vw;
    width: 5.33333vw;
    height: 5.33333vw;
  }
}

.radioItem {
  display: inline-flex;
  align-items: center;
  column-gap: 0.48611vw;
  line-height: 1;
  cursor: pointer;
}

.radioItem:not(:last-of-type) {
  margin-right: 1.11111vw;
}

.radioButton {
  appearance: none;
  position: relative;
  width: 1.875vw;
  height: 1.875vw;
  border: 0.13889vw solid #118195;
  border-radius: 9999px;
  cursor: pointer;
}

.radioButton:checked::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 1.18056vw;
  height: 1.18056vw;
  margin: auto;
  border-radius: 9999px;
  background-color: #118195;
}

@media print, screen and (max-width: 768px) {
  .radioItem {
    column-gap: 1.86667vw;
  }
  .radioItem:not(:last-of-type) {
    margin-right: 4.26667vw;
  }
  .radioButton {
    width: 7.2vw;
    height: 7.2vw;
    border: 0.53333vw solid #118195;
  }
  .radioButton:checked::after {
    inset: 0;
    width: 4.53333vw;
    height: 4.53333vw;
    border-radius: 9999px;
  }
}

.error {
  margin: 4.16667vw auto 2.08333vw;
  text-align: center;
}

.error b {
  font-size: 2.2rem;
  font-weight: bold;
  color: #ff0000;
}

@media print, screen and (max-width: 768px) {
  .error {
    margin: 6.66667vw 0 4vw;
  }
  .error b {
    font-size: 1.8rem;
  }
}

/* check-side */
.check-side {
  width: 23.05556vw;
}

.check-side-guide {
  margin-bottom: 4.16667vw;
  padding: 3.47222vw 1.38889vw 1.38889vw;
  border: solid 0.13889vw #d5e2e3;
}

.check-side-guide h3 {
  font-size: 2rem;
  font-weight: bold;
  color: #eb647f;
}

.check-side-guide ul {
  margin-top: 2.77778vw;
}

.check-side-guide li {
  margin: 1.38889vw 0;
}

.check-side-guide li a {
  display: flex;
  align-items: center;
  gap: 0.69444vw;
  font-size: 1.8rem;
  font-weight: bold;
  color: #332020;
}

.check-side-guide li a:hover {
  text-decoration: underline;
}

.check-side-guide li img {
  width: 2.77778vw;
  height: 2.77778vw;
}

.check-side-list {
  padding: 4.16667vw 0 0;
}

.check-side-list h3 {
  font-size: 2rem;
  font-weight: bold;
  color: #118195;
}

.check-side-list ul {
  margin-top: 2.08333vw;
}

.check-side-list li {
  position: relative;
  margin-bottom: 1.04167vw;
}

.check-side-list li a {
  display: block;
  padding: 2.08333vw 1.04167vw 2.08333vw 3.125vw;
  background-color: #edfcff;
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1.67;
  letter-spacing: 0.06944vw;
  color: #333;
}

.check-side-list li a:hover {
  box-shadow: 0 0 1.73611vw 0 rgba(19, 142, 177, 0.2);
}

.check-side-list li a:before {
  position: absolute;
  top: 2.08333vw;
  left: 0.90278vw;
  display: block;
  content: "";
  width: 1.73611vw;
  height: 1.73611vw;
  background: url(../img/ico_faq.png) no-repeat;
  background-size: cover;
}

.check-side-list li a:after {
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  display: block;
  content: "";
  width: 2.5vw;
  height: 2.5vw;
  background: url(../img/arrow_right.png) no-repeat;
  background-size: cover;
}

@media print, screen and (max-width: 768px) {
  .check-side {
    width: 100%;
    margin-top: 10.66667vw;
  }
  .check-side-guide {
    padding: 10.66667vw 5.33333vw 5.33333vw 6.66667vw;
    border: solid 1px #d5e2e3;
  }
  .check-side-guide h3 {
    font-size: 2rem;
  }
  .check-side-guide ul {
    margin-top: 8vw;
  }
  .check-side-guide li {
    margin: 4vw 0;
  }
  .check-side-guide li a {
    gap: 3.2vw;
    font-size: 1.7rem;
  }
  .check-side-guide li img {
    width: 13.33333vw;
    height: 13.33333vw;
  }
  .check-side-list {
    padding: 13.33333vw 0 0;
  }
  .check-side-list h3 {
    font-size: 2rem;
  }
  .check-side-list ul {
    margin-top: 8vw;
  }
  .check-side-list li {
    margin-bottom: 2.66667vw;
  }
  .check-side-list li a {
    padding: 6.66667vw 4vw 6.66667vw 12vw;
    font-size: 1.6rem;
    letter-spacing: 0.24vw;
  }
  .check-side-list li a:before {
    top: 8vw;
    left: 3.46667vw;
    width: 6.66667vw;
    height: 6.66667vw;
  }
  .check-side-list li a:after {
    width: 9.6vw;
    height: 9.6vw;
  }
}
