@charset "UTF-8";
.dispIb { display: inline-block; }

.dispPC { display: block; }

@media only screen and (max-width: 768px) { .dispPC { display: none; } }

.dispSP { display: none; }

@media only screen and (max-width: 768px) { .dispSP { display: block; } }

body { color: #231815; }

.choiceLead { margin-top: 45px; }

.choiceLead > .text { font-size: 16px; letter-spacing: 0.1em; line-height: 2; color: #31496b; }

.choiceLead > .step { margin-top: 60px; margin-left: 55px; margin-right: 55px; }

@media only screen and (max-width: 768px) { .choiceLead { margin-top: 40px; }
  .choiceLead > .text { font-size: 15px; line-height: 1.7; margin: 0 20px; }
  .choiceLead > .step { margin-top: 40px; margin-left: 25px; margin-right: 25px; } }

.choiceLeadStep { border: 1px solid #231815; border-radius: 14px; position: relative; }

.choiceLeadStep > .heading { position: absolute; top: -25px; left: 0; right: 0; margin: 0 auto; }

.choiceLeadStep > .heading > .text { font-size: 30px; padding: 0 15px; background-color: #fff; letter-spacing: 0.08em; display: inline-block; margin: 0 auto; font-weight: 600; }

.choiceLeadStep > .inner { padding: 60px 42px 40px; }

.choiceLeadStep > .inner > .list { list-style: none; padding: 0; }

.choiceLeadStep > .inner > .list > li + li { margin-top: 20px; }

.choiceLeadStep > .inner > .list > li { text-align: left; }

.choiceLeadStep > .inner > .list > li a { display: inline-block; }

.choiceLeadStep > .inner > .list > li img { height: 35px; }

@media only screen and (max-width: 768px) { .choiceLeadStep > .heading { top: -15px; }
  .choiceLeadStep > .heading > .text { font-size: 20px; }
  .choiceLeadStep > .heading > .text .dispIb { display: block; }
  .choiceLeadStep > .inner { padding: 65px 25px 25px; }
  .choiceLeadStep > .inner > .list > li img { height: auto; max-width: 380px; width: 100%; }
  .choiceLeadStep > .inner > .list > li + li { margin-top: 12px; } }

.choiceStep { margin-top: 55px; padding-top: 30px; }

@media only screen and (max-width: 1000px) { .choiceStep { margin-left: 20px; margin-right: 20px; } }

@media only screen and (max-width: 768px) { .choiceStep { margin-left: auto; margin-right: auto; width: 94%; margin-top: 35px; padding-top: 20px; } }

.choiceStepHead { margin-bottom: 25px; }

.choiceStepHead > .heading { margin: 0; }

.choiceStepHead > .lead { font-size: 16px; letter-spacing: 0.07em; line-height: 2; padding: 0 55px; margin-top: 25px; text-align: left; }

@media only screen and (max-width: 768px) { .choiceStepHead > .lead { font-size: 14px; line-height: 1.7; padding: 0 10px; } }

.stepPoint { list-style: none; padding: 0; margin: -9px; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }

.stepPoint > li { width: 50%; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 9px; }

@media only screen and (max-width: 768px) { .stepPoint > li { width: 100%; } }

.pointCard { border: 1px solid #231815; border-radius: 14px; padding: 15px 18px 25px; height: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; }

.pointCard > .heading { text-align: center; font-weight: 600; margin-bottom: 18px; }

.pointCard > .heading > .sub { display: block; font-size: 12px; }

.pointCard > .heading > .main { display: block; font-size: 20px; }

.pointCard > .lead { font-size: 13px; text-align: left; }

.pointCard > .list { margin-top: 6px; }

.pointCard > .list > li { position: relative; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 1.6; font-size: 11px; text-align: left; }

.pointCard > .list > li::before { content: "●"; }

.pointCard > .list > li.type2::before { content: "◎"; }

.pointCard > .image { margin-top: 30px; }

@media only screen and (max-width: 768px) { .pointCard > .heading > .sub { font-size: 12px; }
  .pointCard > .heading > .main { font-size: 18px; }
  .pointCard > .image { margin-top: 20px; } }

.stepType { list-style: none; padding: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.stepType li { width: 100%; }

.stepType > li + li { margin-top: 25px; }

@media only screen and (max-width: 1000px) { .stepType > li + li { margin-top: 20px; } }

.typeCard { border: 1px solid #231815; border-radius: 14px; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 28px; }

.typeCard > .head > .heading { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 0; font-weight: 400; }

.typeCard > .head > .heading > .label { margin-right: 28px; }

.typeCard > .head > .heading > .label img { height: 91px; }

.typeCard > .head > .heading > .text { -webkit-box-flex: 1; -ms-flex: 1; flex: 1; font-size: 18px; color: #3d80c2; text-align: left; letter-spacing: 0.1em; line-height: 1.67; }

.typeCard > .body { margin-top: 28px; position: relative; }

.typeCard > .body > .image { position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; z-index: -1; }

@media only screen and (max-width: 1000px) { .typeCard > .body { margin-top: 20px; }
  .typeCard > .body > .image { margin-top: 30px; position: static; text-align: center; } }

@media only screen and (max-width: 768px) { .typeCard { padding: 18px; }
  .typeCard > .head > .heading { display: block; }
  .typeCard > .head > .heading > .label { display: block; text-align: center; margin-right: 0; margin-bottom: 12px; }
  .typeCard > .head > .heading > .label img { height: 70px; }
  .typeCard > .head > .heading > .text { display: block; font-size: 16px; } }

.typeBody { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.typeBody > li { width: 230px; margin-bottom: 28px; }

.typeBody > li.w200 { width: 200px; }

.typeBody > li.w200 .card > .heading { letter-spacing: 0; }

.typeBody > li:nth-of-type(1) { padding-left: 40px; }

.typeBody > li:nth-of-type(2) { padding-right: 40px; }

.typeBody .card > .heading { text-align: left; font-size: 20px; letter-spacing: 0.07em; color: #31496b; font-weight: 600; }

.typeBody .card > .text { text-align: justify; text-justify: inter-ideograph; font-size: 11px; letter-spacing: 0.07em; line-height: 1.5; }

@media only screen and (max-width: 1000px) { .typeBody { display: block; }
  .typeBody > li { width: 100%; margin-bottom: 20px; }
  .typeBody > li.w200 { width: 100%; }
  .typeBody > li.w200 .card > .heading { letter-spacing: 0.07em; }
  .typeBody > li:nth-of-type(1) { padding-left: 0; }
  .typeBody > li:nth-of-type(2) { padding-right: 0; } }

@media only screen and (max-width: 768px) { .typeBody .card > .heading { font-size: 18px; } }

@media only screen and (max-width: 768px) { .steoMerit { overflow-x: scroll; padding-bottom: 20px; }
  .steoMerit table { min-width: 620px; } }

.meritTable { border: 1px solid #231815; border-radius: 14px; width: 100%; height: 100%; border-collapse: separate; border-spacing: 0; -webkit-box-sizing: border-box; box-sizing: border-box; table-layout: fixed; }

.meritTable td:not(:first-child), .meritTable th:not(:first-child) { border-left: 1px solid #231815; }

.meritTable tr > *:first-child { width: 60px; -webkit-box-sizing: border-box; box-sizing: border-box; }

@media only screen and (max-width: 768px) { .meritTable tr > *:first-child { width: 53px; } }

.meritTable > thead th { padding: 12px 12px; border-bottom: 1px solid #231815; }

@media only screen and (max-width: 768px) { .meritTable > thead th { padding: 10px 10px; } }

.meritTable > thead .label { display: block; background-color: #3d80c2; text-align: center; color: #fff; font-weight: 400; font-size: 18px; letter-spacing: 0.1em; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 4px; }

@media only screen and (max-width: 768px) { .meritTable > thead .label { font-size: 15px; } }

.meritTable > tbody tr:not(:last-child) th, .meritTable > tbody tr:not(:last-child) td { border-bottom: 1px dashed #231815; }

.meritTable > tbody th { vertical-align: middle; position: relative; }

@media only screen and (max-width: 768px) { .meritTable > tbody th { padding: 10px; } }

.meritTable > tbody td { padding: 20px; -webkit-box-sizing: border-box; box-sizing: border-box; }

@media only screen and (max-width: 768px) { .meritTable > tbody td { padding: 18px; } }

.meritTable > tbody .label { display: block; height: calc(100% - 24px); width: calc(100% - 24px); position: absolute; top: 12px; left: 12px; text-align: center; color: #fff; font-weight: 400; font-size: 18px; letter-spacing: 0.07em; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }

.meritTable > tbody .label.-merit { background-color: #ee87b4; }

.meritTable > tbody .label.-demerit { background-color: #856a77; }

.meritTable > tbody .label > .txt { padding-right: 0.2em; display: block; }

@media only screen and (max-width: 768px) { .meritTable > tbody .label { font-size: 15px; height: calc(100% - 20px); width: calc(100% - 20px); top: 10px; left: 10px; }
  .meritTable > tbody .label > .txt { padding-right: 0.3em; } }

.meritTable > tbody .heading { font-size: 18px; letter-spacing: 0.09em; }

.meritTable > tbody .heading::before { content: "■"; }

.meritTable > tbody .heading.-merit { color: #ee87b4; }

.meritTable > tbody .heading.-demerit { color: #856a77; }

.meritTable > tbody .heading:not(:first-child) { margin-top: 15px; }

@media only screen and (max-width: 768px) { .meritTable > tbody .heading { font-size: 16px; } }

.meritTable > tbody .text { font-size: 11px; letter-spacing: 0.1em; line-height: 1.5; }

.meritTable > tbody .list { list-style: none; padding: 0; }

.meritTable > tbody .list > li { font-size: 11px; letter-spacing: 0.1em; line-height: 1.5; }

.choiceBtn { margin-top: 55px; }

.choiceBtn a { display: block; }

@media only screen and (max-width: 768px) { .choiceBtn { margin-top: 40px; }
  .choiceBtn a { width: 75%; margin: 0 auto; } }
/*# sourceMappingURL=style.css.map */