html {
  font-size: 62.5%;
  height: -webkit-fill-available;
}

body {
  width: 100%;
  min-width: 320px;
  max-width: 1920px;
  margin: 0 auto;
  min-height: 100vh;
  min-height: -webkit-fill-available;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;
  font-size: 1.6rem;
  line-height: 1.4;
  -webkit-text-size-adjust: 100%;
  word-break: break-all;
  color: #333;
  background-color: #f7f7f7;
  overflow-x: hidden;
}
body.fix {
  height: 100vh;
  overflow-y: hidden;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.25;
}

img {
  max-width: 100%;
  height: auto;
}
img[src$=".svg"] {
  width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  transition: all 0.2s;
}

p, th, td {
  word-break: break-word;
  overflow-wrap: anywhere;
}

em {
  font-style: normal;
}

.c-ore {
  color: #fc5b00;
}

.bg-blu {
  background-color: #1d50a0;
}

.l-container-lg {
  padding: 0 4vw;
}

.l-container {
  padding: 0 5.33vw;
  width: 100%;
  overflow-x: hidden;
}

.l-container-md {
  padding: 0 6.66vw;
}

/* .l-header */
.l-header {
  background-image: url("../img/head-bg.svg");
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: 100% auto;
}
.l-header-inner {
  padding-top: 6.66vw;
  padding-bottom: 9.33vw;
}
.l-header-ttl {
  width: 69.33vw;
}
.l-header::after {
  content: "";
  width: 30.4vw;
  height: 44.8vw;
  background-image: url("../img/head-deco.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: 3.2vw;
  right: 2.13vw;
}

/*===========================================================*/
/*  question
/*===========================================================*/
.q-cont {
  padding-bottom: 12vw;
}

.q-cont-ttl {
  text-align: center;
  background-color: #fff;
  padding: 3.2vw 2.66vw;
  border-radius: 1.33vw;
  border-bottom: 3px solid rgba(0, 0, 0, 0.1);
  position: relative;
  margin-top: -6.4vw;
}
.q-cont-ttl img {
  width: 61.33vw;
  margin: 2.66vw 0;
}
.q-cont-ttl::before, .q-cont-ttl::after {
  content: "";
  width: 2.66vw;
  height: 24.53vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.q-cont-ttl::before {
  background-image: url("../img/kakko-l.svg");
  left: 2.66vw;
}
.q-cont-ttl::after {
  background-image: url("../img/kakko-r.svg");
  right: 2.66vw;
}

.q-cont-item-wrap {
  margin-bottom: 8vw;
}

.q-cont-item {
  padding-top: 8vw;
  position: relative;
}
.q-cont-item.q4, .q-cont-item.q5 {
  padding-top: 10.66vw;
}
.q-cont-item.q1::before {
  content: "";
  width: 100vw;
  height: 67.2vw;
  background-image: url("../img/bg1.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: -12.27vw;
  left: -5.34vw;
}
.q-cont-item.q2::before {
  content: "";
  width: 100vw;
  height: 125.33vw;
  background-image: url("../img/bg2.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: -12.8vw;
  left: -5.34vw;
}
.q-cont-item.q4::before {
  content: "";
  width: 100vw;
  height: 67.2vw;
  background-image: url("../img/bg3.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: -7.47vw;
  left: -5.34vw;
}
.q-cont-item.q5::before {
  content: "";
  width: 100vw;
  height: 67.2vw;
  background-image: url("../img/bg4.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: -5.87vw;
  left: -5.34vw;
}
.q-cont-item .q-txt {
  font-size: 4.8vw;
  font-weight: 900;
  line-height: 1.64;
  letter-spacing: 0.05em;
}

.q-cont-inner {
  position: relative;
  z-index: 1;
}

.q-cont-head {
  padding-left: 17.06vw;
  position: relative;
  margin-bottom: 5.33vw;
}
.q-cont-head::before {
  content: "";
  display: block;
  width: 11.73vw;
  height: 13.33vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
}
.q1 .q-cont-head::before {
  background-image: url("../img/q1.svg");
}
.q2 .q-cont-head::before {
  background-image: url("../img/q2.svg");
}
.q3 .q-cont-head::before {
  background-image: url("../img/q3.svg");
}
.q4 .q-cont-head::before {
  background-image: url("../img/q4.svg");
}
.q5 .q-cont-head::before {
  background-image: url("../img/q5.svg");
}
.q-cont-head::after {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
}
.q1 .q-cont-head::after {
	width: 33.93vw;
	height: 26.53vw;
	background-image: url("../img/Question_01.png");
	top: -5.34vw;
	right: -6.27vw;
}
.q2 .q-cont-head::after {
	width: 40.66vw;
	height: 26.33vw;
	background-image: url("../img/Question_02.png");
	top: -5.2vw;
	right: -9.87vw;
}
.q3 .q-cont-head::after {
	width: 38.93vw;
	height: 25.6vw;
	background-image: url("../img/Question_03.png");
	top: -4.8vw;
	right: -7.87vw;
}
.q4 .q-cont-head::after {
	width: 33.8vw;
	height: 25.33vw;
	background-image: url("../img/Question_04.png");
	top: -7.47vw;
	right: -2.67vw;
}
.q5 .q-cont-head::after {
	width: 40.2vw;
	height: 25.6vw;
	background-image: url("../img/Question_05.png");
	top: 0;
	right: -9.87vw;
}

.q-cont-body {
  box-shadow: inset 0 0 5px 5px rgba(0, 0, 0, 0.05);
  background: #ddd url("../img/box-shadow.png") no-repeat top center/100% auto;
  padding: 5.33vw;
  border-radius: 1.33vw;
}

/*----------------------*/
/*	form
/*----------------------*/
input[type=radio] {
  display: none;
}

.radio {
  cursor: pointer;
  position: relative;
  display: block;
}

.radio + .radio {
  margin-top: 2.66vw;
}

.radio span.radio-txt {
  width: 6.93vw;
  height: 6.93vw;
  display: block;
  position: absolute;
  top: 3.46vw;
  left: 3.46vw;
  margin: auto;
}

.radio span.radio-txt::after {
  content: "";
  width: 6.93vw;
  height: 6.93vw;
  background: #ddd;
  border: 1px solid #ddd;
  border-radius: 50%;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}

.radio span.radio-txt::before {
  content: "";
  width: 6.93vw;
  height: 6.93vw;
  z-index: 1;
  background-color: transparent;
  background-image: url("../img/icon-check.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.radio span.radio-label {
  display: block;
  font-size: 4.26vw;
  font-weight: bold;
  line-height: 1.6625;
  padding: 0.8em 3.2vw 3.2vw 13.33vw;
  border-radius: 1.33vw;
  background: #fff;
  border-bottom: 2px solid #8a8a8a;
  box-shadow: 0 4px 4px rgba(175, 195, 225, 0.45);
}

.radio input[type=radio]:checked + span::before {
  opacity: 1;
}

.radio input[type=radio]:checked + span::after {
  background: transparent;
  border-color: transparent;
}

.radio input[type=radio]:checked + span + .radio-label {
  color: #fff;
  box-shadow: none;
  border-color: #ddd;
  background: linear-gradient(180deg, #ee6a0a 0%, #ff7e20 16.67%, #ff7e20 100%);
}

.btn {
  width: 100%;
  font-size: 4.8vw;
  font-weight: 900;
  color: #fff;
  text-align: center;
  letter-spacing: 0.05em;
  padding: 0.9em 10.66vw;
  background: linear-gradient(180deg, #1fc3f6 0%, #1d50a0 86.46%, #0d2f66 100%);
  border-radius: 1.33vw;
  position: relative;
}
.btn + .btn {
  margin-top: 5.33vw;
}
.btn::after {
  content: "";
  width: 2.93vw;
  height: 3.73vw;
  background-image: url("../img/arrow-r.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 5.33vw;
}
.btn.btn-wht {
  background: #fff;
  color: #333;
  letter-spacing: 0.045em;
  padding: 0.8em;
  box-shadow: 0 4px 4px rgba(175, 195, 225, 0.45);
}
.btn.btn-wht::after {
  content: none;
}
.btn.btn-red {
  background: #e30012;
  color: #fff;
  letter-spacing: 0.045em;
  padding: 0.8em;
}
.btn.btn-red::after {
  content: none;
}

/*===========================================================*/
/*  answer
/*===========================================================*/
.judgement {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  background: rgba(0, 0, 0, 0.8);
}
.judgement-img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.judgement img {
  width: 100%;
  height: auto;
}

.answer {
  position: relative;
  width: 100%;
  overflow-x: hidden;
  padding-bottom: 16vw;
  display: none;
}
.answer::after {
  content: "";
  display: block;
  width: 23.46vw;
  height: 42.13vw;
  background-image: url("../img/answer-head-deco.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
  position: absolute;
  top: 3.2vw;
  right: -5.07vw;
  z-index: 0;
}
.answer::before {
  content: "";
  display: block;
  width: 100vw;
  height: 64.53vw;
  background-image: url("../img/answer-head-bg.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}

.a-cont {
  position: relative;
  z-index: 2;
}

.a-cont-head {
  padding: 5.33vw 0 20vw;
}

.a-txt {
  font-size: 5.6vw;
  font-weight: 900;
  color: #fff;
  line-height: 1.4;
  text-align: center;
  position: relative;
  z-index: 2;
}
.a-txt em {
  color: #fbe62b;
}
.a-txt .em1 em {
  font-size: 7.46vw;
}
.a-txt .em1 em > span {
  font-size: 0.833em;
}
.a-txt .em2 em {
  font-size: 6.66vw;
}
.a-txt .em2 em > span {
  font-size: 0.8148em;
}

.box {
  background-color: #fff;
  border-radius: 2.66vw;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  margin-top: -13.34vw;
  position: relative;
  margin-bottom: 10.66vw;
}
.box::before {
  content: "";
  width: 100vw;
  height: 67.2vw;
  background-image: url("../img/answer-bg1.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: 40vw;
  left: -6.67vw;
  z-index: -1;
}
.box-head {
  padding: 4.8vw 4vw 3.46vw;
  border-radius: 2.66vw 2.66vw 0 0;
  background: linear-gradient(180deg, #fff497 0%, #fbe62b 100%);
  position: relative;
  z-index: 2;
}
.box-head-txt {
  font-size: 4.53vw;
  font-weight: 900;
  text-align: center;
}
.box-head-txt em {
  font-size: 1.35em;
}
.box-head-txt em > span {
  color: #e30012;
}
.box-head-note {
  font-size: 2.93vw;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  margin-top: 1em;
}
.box-body {
  padding: 5.33vw 4vw 5.33vw;
}
.box-list > li {
  font-size: 3.2vw;
  font-weight: bold;
  line-height: 1.4;
  position: relative;
  padding-left: 1.5em;
}
.box-list > li em {
  color: #e30012;
}
.box-list > li::before {
  content: "";
  width: 3.2vw;
  height: 3.2vw;
  background-image: url("../img/icon-check-box.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: 0.25em;
  left: 0;
}
.box-list > li:nth-child(n+2) {
  margin-top: 1em;
}

.box2 {
  background-color: #fff;
  padding: 2.13vw 2.13vw 6.66vw;
  border-radius: 2.66vw;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  position: relative;
  margin-bottom: 6.66vw;
}
.box2-cont {
  position: relative;
  z-index: 0;
}
.box2-head {
  padding: 8vw 4vw 4vw;
  border-radius: 2.66vw;
  background: linear-gradient(180deg, #e82a2a 0%, #cf0f0f 100%);
}
.box2-txt-img {
  width: 78.8%;
  position: absolute;
  top: -4vw;
  left: 50%;
  transform: translateX(-50%);
}
.box2::before {
  content: "";
  width: 100vw;
  height: 124vw;
  background-image: url("../img/answer-bg2.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: 53.33vw;
  left: -6.67vw;
  z-index: -1;
}
.box2::after {
  content: "";
  width: 11.46vw;
  height: 14.66vw;
  background-image: url("../img/icon-box-point.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: -6.67vw;
  left: -2.14vw;
}
.box2-head-txt {
  font-size: 5.05vw;
  font-weight: 900;
  color: #fff;
  text-align: center;
  line-height: 1.25;
  margin-bottom: 0.8em;
}
.box2-note {
  font-size: 3.2vw;
  font-weight: bold;
  color: #fff;
  line-height: 1.25;
  text-align: center;
  margin-top: 1em;
}
.box2-body {
  padding-top: 4vw;
}
.box2-body-txt {
  width: 94%;
  margin: 0 auto;
}

.box3 {
  background-color: #fdfbd4;
  border: 2px solid #fad791;
  border-radius: 1.33vw;
  margin-bottom: 9.33vw;
}
.box3-head-txt {
  font-size: 4vw;
  font-weight: bold;
  line-height: 1.25;
  text-align: center;
  padding: 1em 0;
  border-bottom: 2px solid rgba(0, 0, 0, 0.3);
}
.box3-list > li {
  font-size: 3.2vw;
  font-weight: bold;
  padding: 0.4em 0;
  display: flex;
}
.box3-list > li:nth-child(odd) {
  background-color: #fefdea;
}
.box3-list > li .box3-txt {
  width: 14%;
  display: inline-block;
  position: relative;
  padding-left: 1em;
  border-right: 1px solid rgba(0, 0, 0, 0.3);
}
.box3-list > li .box3-txt2 {
  color: rgba(0, 0, 0, 0.3);
  width: 29%;
  display: inline-block;
  padding-left: 1em;
}
.box3-list > li .box3-txt3 {
  flex: 1;
}

.answer-note {
  font-size: 3.73vw;
  font-weight: 900;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 1em;
}

/*# sourceMappingURL=style.css.map */
