@charset "UTF-8";
/*使い方ガイド*/
#wrapper.page-guide {
  padding: 0 0 60px;
}

#main {
  max-width: 1200px;
  width: 95%;
  margin-inline: auto;
}
@media only screen and (max-width: 1023.8px) {
  #main {
    width: 90%;
  }
}

.guide_ttl {
  margin-bottom: 50px;
  background-color: #ade0ff;
}
.guide_ttl h1 {
  max-width: 1160px;
  margin-inline: auto;
}
@media only screen and (max-width: 768px) {
  .guide_ttl h1 {
    max-width: 540px;
  }
}

.page-guide {
  font-weight: 500;
  font-size: 1.6rem;
}
.page-guide .fs12 {
  font-size: 1.2rem;
  letter-spacing: -0.05em;
  text-indent: -1.0em;
  padding-left: 1.0em;
}
.page-guide .fs16 {
  display: inline-block;
  font-size: 1.6rem;
  text-indent: -1.0em;
  padding-left: 1.0em;
  line-height: 1.4;
}
.page-guide .fs22 {
  font-size: 2.2rem;
}
@media only screen and (max-width: 768px) {
  .page-guide .fs22 {
    font-size: 2.0rem;
  }
}
.page-guide .mgb10 {
  margin-bottom: 10px;
}
.page-guide .mgb80 {
  margin-bottom: 80px;
}
@media only screen and (max-width: 768px) {
  .page-guide .mgb80 {
    margin-bottom: 40px;
  }
}
.page-guide .mgb100 {
  margin-bottom: 100px;
}
@media only screen and (max-width: 768px) {
  .page-guide .mgb100 {
    margin-bottom: 50px;
  }
}
.page-guide .marker_gr {
  background-color: #d8f891;
}
.page-guide .marker_bl {
  background-color: #d9f1ff;
}
.page-guide .comment {
  text-align: center;
  font-size: 2.0rem;
  line-height: 1.8;
}
@media only screen and (max-width: 768px) {
  .page-guide .comment {
    font-size: calc(1.6rem + 4 * (100vw - 375px)/393);
  }
}
.page-guide .merit {
  position: relative;
  border: solid 5px #ade0ff;
  background-color: #d9f1ff;
  border-radius: 4px;
  box-sizing: border-box;
  padding: 30px 15px;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto 100px;
}
@media only screen and (max-width: 1023.8px) {
  .page-guide .merit {
    max-width: 730px;
    border: solid 4px #ade0ff;
  }
}
@media only screen and (max-width: 768px) {
  .page-guide .merit {
    padding: 20px 15px;
    margin: 0 auto 50px;
  }
}
.page-guide .merit .title {
  position: absolute;
  width: 311px;
  height: 75px;
  top: -48px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  .page-guide .merit .title {
    width: 213px;
    height: 52px;
    top: -30px;
  }
}
.page-guide .merit table {
  color: #002049;
  margin-bottom: 10px;
}
.page-guide .merit table th {
  font-size: 2.4rem;
  font-weight: 700;
  height: 55px;
  display: flex;
  align-items: center;
  padding: 0 30px 0 55px;
  background: url("../images/ico_check.svg") left center no-repeat;
  background-size: 40px;
}
@media only screen and (max-width: 1023.8px) {
  .page-guide .merit table th {
    padding: 0 20px 0 calc(40px + 15 * (100vw - 375px)/649);
    background-size: calc(28px + 12 * (100vw - 375px)/649);
    font-size: calc(2.0rem + 4 * (100vw - 375px)/649);
  }
}
.page-guide .merit table td {
  font-size: 2.0rem;
}
@media only screen and (max-width: 1023.8px) {
  .page-guide .merit table td {
    font-size: calc(1.6rem + 4 * (100vw - 375px)/649);
  }
}
@media only screen and (max-width: 1023.8px) {
  .page-guide .merit table td {
    display: block;
  }
  .page-guide .merit table th, .page-guide .merit table td {
    width: 100%;
  }
}
.page-guide .merit .under_line {
  border-bottom: solid 4px #ffff00;
}
.page-guide h2.section_ti {
  font-size: 3.4rem;
  color: #002049;
  font-weight: 700;
  border-bottom: solid 5px;
  padding-bottom: 15px;
  line-height: 1;
  margin-bottom: 30px;
}
@media print, screen and (min-width: 1024px) {
  .page-guide h2.section_ti {
    display: flex;
    align-items: flex-end;
  }
}
@media only screen and (max-width: 1023.8px) {
  .page-guide h2.section_ti {
    text-align: center;
    font-size: calc(2.2rem + 10 * (100vw - 375px)/649);
    line-height: 1.4;
  }
}
.page-guide h2.section_ti:before {
  content: "";
  width: 84px;
  height: 72px;
  display: block;
}
@media print, screen and (min-width: 1024px) {
  .page-guide h2.section_ti:before {
    margin-right: 10px;
    margin-bottom: -10px;
  }
}
@media only screen and (max-width: 1023.8px) {
  .page-guide h2.section_ti:before {
    width: 58px;
    height: 50px;
    margin: 0 auto 5px;
  }
}
.page-guide h2.section_ti.sakusei {
  border-color: #00a0ff;
}
.page-guide h2.section_ti.sakusei:before {
  background: url("../images/ico_guide_sakusei.svg") no-repeat;
  background-size: contain;
}
.page-guide h2.section_ti.toukou {
  border-color: #a8ee0a;
}
.page-guide h2.section_ti.toukou:before {
  background: url("../images/ico_guide_toukou.svg") no-repeat;
  background-size: contain;
}
.page-guide .step_block {
  width: 100%;
  max-width: 1070px;
  margin: 0 auto 30px;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 1023.8px) {
  .page-guide .step_block {
    flex-direction: column;
    margin: 0 auto 20px;
  }
}
.page-guide .step_block .block {
  position: relative;
  max-width: 336px;
  background-color: #f6f6f9;
  padding: 20px 30px 30px;
}
@media print, screen and (min-width: 1024px) {
  .page-guide .step_block .block {
    width: 32%;
  }
}
@media only screen and (max-width: 1023.8px) {
  .page-guide .step_block .block {
    max-width: 600px;
    width: 100%;
    margin-inline: auto;
  }
}
@media only screen and (max-width: 1023.8px) {
  .page-guide .step_block .block + .block {
    margin-top: 40px;
  }
}
.page-guide .step_block .block + .block::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  width: 60px;
  height: 60px;
  border: solid 1px #898987;
  border-radius: 30px;
  background-color: #fff;
}
@media print, screen and (min-width: 1024px) {
  .page-guide .step_block .block + .block::before {
    left: -45px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
  }
}
@media only screen and (max-width: 1023.8px) {
  .page-guide .step_block .block + .block::before {
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
  }
}
.page-guide .step_block .block + .block::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 3;
  width: 21px;
  height: 21px;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 17'%3E%3Cpath fill='%23898987' d='M15.52,6.9H4.94l4.32-4.3c.58-.58.6-1.54.03-2.14-.57-.6-1.51-.61-2.09-.03L.45,7.16c-.58.58-.6,1.53-.04,2.13l6.75,7.25c.29.31.68.47,1.07.47.37,0,.73-.14,1.02-.42.59-.58.61-1.53.05-2.14l-4.21-4.52h10.43c.82,0,1.48-.68,1.48-1.51s-.66-1.51-1.48-1.51Z'/%3E%3C/svg%3E") 50% 50%/100% 100% no-repeat;
  background-size: contain;
}
@media print, screen and (min-width: 1024px) {
  .page-guide .step_block .block + .block::after {
    left: -25px;
    top: 50%;
    transform: translateY(-50%) rotate(180deg);
    -webkit-transform: translateY(-50%) rotate(180deg);
  }
}
@media only screen and (max-width: 1023.8px) {
  .page-guide .step_block .block + .block::after {
    top: -30px;
    left: 50%;
    transform: translateX(-50%) rotate(-90deg);
    -webkit-transform: translateX(-50%) rotate(-90deg);
  }
}
.page-guide .step_block .step_number {
  width: 107px;
  margin-bottom: 15px;
  margin-left: -10px;
}
@media only screen and (max-width: 768px) {
  .page-guide .step_block .step_number {
    width: 61px;
  }
}
.page-guide .step_block .ti {
  color: #002049;
  font-size: 2.2rem;
  text-align: center;
  padding: 8px 10px;
  border-radius: 4px;
  font-weight: 700;
  margin-bottom: 20px;
}
@media screen and (min-width: 1024px) and (max-width: 1140px) {
  .page-guide .step_block .ti {
    font-size: 2.0rem;
  }
}
.page-guide .step_block.sakusei .ti {
  background-color: #d9f1ff;
}
.page-guide .step_block.toukou .ti {
  background-color: #d8f891;
}
.page-guide .step_block .ti02, .page-guide .step_block .ti03 {
  font-size: 2.0rem;
  padding: 8px 15px;
  border-radius: 4px;
  font-weight: 700;
  margin-bottom: 10px;
}
.page-guide .step_block .ti02 {
  border: solid 2px #a8ee0a;
  background-color: #fff;
}
.page-guide .step_block .ti03 {
  border: solid 2px #a8ee0a;
  background-color: #f0fcd5;
}
.page-guide .step_block .image {
  max-width: 275px;
  margin-inline: auto;
  margin-bottom: 15px;
}
.page-guide .step_block .text {
  line-height: 1.6;
}
.page-guide .step_block .text a {
  color: #325494;
  text-decoration: underline;
  font-weight: 700;
}
@media print, screen and (min-width: 1024.2px) {
  .page-guide .step_block .text a:hover {
    text-decoration: none;
  }
}
.page-guide .step_block .point-box {
  border: 3px solid #a8ee0a;
  border-radius: 5px;
  position: relative;
  margin-top: 1em;
}
.page-guide .step_block .point-title {
  text-align: center;
  position: absolute;
  right: 0;
  left: 0;
  top: -1.2em;
}
.page-guide .step_block .point-title span {
  padding: 0 .5em;
  background-color: #f6f6f9;
  font-size: 2.0rem;
  font-weight: 700;
}
.page-guide .step_block .point-box .inner {
  padding: 15px;
}
.page-guide .guide_press_banner {
  max-width: 730px;
  margin-inline: auto;
}
@media print, screen and (min-width: 1024.2px) {
  .page-guide .guide_press_banner img {
    transition: 0.4s;
  }
  .page-guide .guide_press_banner:hover img {
    opacity: 0.6;
  }
}
@media only screen and (max-width: 768px) {
  .page-guide .guide_press_banner {
    max-width: 420px;
  }
}
.page-guide .caution {
  border: solid 5px #ffa43d;
  border-radius: 4px;
  padding: 15px;
  width: 100%;
  max-width: 970px;
  margin: 0 auto 30px;
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 1023.8px) {
  .page-guide .caution {
    max-width: 730px;
    text-align: left;
    font-size: 1.4rem;
  }
}
.page-guide .caution p:first-child {
  text-align: center;
  margin-bottom: 5px;
}
.page-guide #contact .contact_link {
  margin-top: 0;
}
