@charset "utf-8";

* {
  box-sizing: border-box;
}
body {
  margin: 0;
  padding: 0;
  background: url("../img/common/bg.jpg");
  color: #333;
  font-family: "新丸ゴ M", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 18px;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
}
@media (max-width: 767px) {
  body {
    font-size: 16px;
    line-height: 1.6;
  }
}

h1,h2,h3,h4,h5,h6 {
	margin: 0;
	font-size: 100%;
	font-weight: normal;
	line-height: 1.5;
}
p {
	margin: 0;
}
ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
ol {
	margin: 0;
	padding: 0 0 0 24px;
}
dl,dt,dd {
	margin: 0;
	padding: 0;
}
a,
.a {
	color: #30c;
	text-decoration: none;
	transition: .4s ease;
	cursor: pointer;
}
a:hover,
.a:hover {
	opacity: 0.6;
}
a img {
	border: none;
}
img {
	width: auto\9;
	height: auto;
	max-width: 100%;
	border: 0;
	vertical-align: middle;
	-ms-interpolation-mode: bicubic;
}



/* ---------------- general */
@media (max-width: 767px) {
  .-pc {
    display: none;
  }
}


/* ---------------- layout */
#wrap {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 980px;
  height: 522px;
  background: rgba(255, 255, 255, 0.5);
  border: 2px solid rgba(255, 128, 128, 0.2);
  border-radius: 20px;
  transform: translate(-50%, -50%);
}
@media (max-width: 1023px) {
  #wrap {
    overflow: hidden;
    position: relative;
    top: 0;
    left: 0;
    width: auto;
    height: auto;
    border: none;
    border-radius: 0;
    transform: none;
  }
}


/* ---------------- outBlock */
.outBlock {
  position: absolute;
  z-index: 10;
  top: calc(100% + 8px);
  left: 0;
  width: 100%;
  height: 48px;
}
.outBlock .kokoro {
  position: absolute;
  top: 50%;
  left: 0;
  width: 119px;
  transform: translate(0, -50%);
}
.outBlock .goverment {
  position: absolute;
  top: 50%;
  right: 0;
  width: 120px;
  transform: translate(0, -50%);
}
.outBlock .shareArea {
  position: absolute;
  top: 50%;
  left: 160px;
  width: 280px;
  height: 32px;
  transform: translate(0, -50%);
}
.outBlock .shareArea .btnShare {
  display: none;
}
@media (max-width: 1023px) {
  .outBlock {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 64px;
    background: url("../img/common/bg.jpg");
    border-bottom: 2px solid rgba(255, 128, 128, 0.2);
  }
  .outBlock .kokoro {
    left: 16px;
  }
  .outBlock .goverment {
    right: 16px;
  }
}
@media (max-width: 767px) {
  .outBlock {
    height: 60px;
  }
  .outBlock .kokoro {
    width: 112px;
  }
  .outBlock .goverment {
    width: 80px;
  }
  .outBlock .shareArea {
    position: fixed;
    top: auto;
    left: auto;
    bottom: 64px;
    right: -160px;
    width: 160px;
    height: auto;
    padding: 16px;
    background: rgba(255, 128, 128, 0.5);
    border-radius: 10px 0 0 0;
    transform: translate(0, 0);
    transition: 0.5s cubic-bezier(1, 0, 0, 1);
  }
  .outBlock .shareArea.-active {
    right: 0;
  }
  .outBlock .shareArea .btnShare {
    display: block;
    position: absolute;
    bottom: 0;
    right: 100%;
    width: 40px;
    height: 40px;
    padding: 6px 8px;
    background: rgba(255, 128, 128, 0.5);
    border-radius: 10px 0 0 10px;
  }
}



/* ---------------- header */
header {
  overflow: hidden;
  position: relative;
  height: 50px;
  padding: 0 18px;
  border-bottom: 2px solid rgba(255, 128, 128, 0.2);
}
header .head li {
  display: flex;
  align-items: center;
  position: absolute;
  top: -50px;
  height: 50px;
  color: #666;
  font-size: 14px;
  line-height: 1.4;
  transition: 0.5s cubic-bezier(1, 0, 0, 1);
}
header .head li.-active {
  top: 0;
  transition-delay: .5s;
}
header .progressbar {
  display: flex;
  gap: 6px;
  position: absolute;
  top: calc(50% - 50px);
  right: 18px;
  transform: translate(0, -50%);
  transition: 0.5s cubic-bezier(1, 0, 0, 1);
}
header .progressbar.-active {
  top: 50%;
  transition-delay: .5s;
}
header .progressbar li {
  opacity: 0.2;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ff8080;
  transition: 0.5s cubic-bezier(1, 0, 0, 1);
}
header .progressbar li.-active {
  opacity: 0.7;
}
header .progressbar li.-done {
  opacity: 0.7;
}
@media (max-width: 1023px) {
  header {
    overflow: hidden;
    height: 70px;
    transition: 0.5s cubic-bezier(1, 0, 0, 1);
  }
  header.-hide {
    height: 0;
    border-bottom-width: 0;
  }
}
@media (max-width: 767px) {
  header .head li {
    height: 48px;
    font-size: 12px;
  }
  header .progressbar.-active {
    gap: 6px;
    top: auto;
    right: auto;
    bottom: 8px;
    left: 16px;
  }
  header .progressbar li {
    width: 6px;
    height: 6px;
  }
}


/* ---------------- footer */
footer {
  overflow: hidden;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 48px;
}
footer ul {
  display: flex;
  gap: 24px;
  position: relative;
  top: 0;
  padding: 0 18px;
  transform: translate(0, 48px);
  transition: 0.5s cubic-bezier(1, 0, 0, 1);
}
footer ul.-active {
  transform: translate(0, 0);
  transition-delay: .5s;
}
footer .a {
  color: #666;
  font-size: 12px;
  line-height: 48px;
}
footer .a::before {
  content: '';
  opacity: 0.8;
  display: inline-block;
  margin-right: 8px;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-right: 10px solid #ff8080;
  vertical-align: middle;
}
@media (max-width: 1023px) {
  footer {
    position: static;
    width: auto;
    height: auto;
  }
  footer ul {
    padding: 0 16px;
    background: url("../img/common/bg.jpg");
    border-top: 2px solid rgba(255, 128, 128, 0.2);
  }
}



/* ---------------- article */
main {
  overflow: hidden;
}
article {
  display: flex;
  position: relative;
  left: 0;
  width: auto;
  transition: 0.5s cubic-bezier(1, 0, 0, 1);
}
article.js-sections {
  opacity: 0;
}
article.js-sections.-load {
  opacity: 1;
}
article section {
  position: relative;
  width: 976px;
  height: 469px;
}
.l-container {
  padding: 18px;
}
.question {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  width: 100%;
  height: 280px;
  font-family: "新丸ゴ M", sans-serif;
  font-size: 38px;
  text-align: center;
  line-height: 1.5;
}
.question .-min {
  display: inline-block;
  font-size: 16px;
}
.question sup {
  font-size: 16px;
}
.-ch2 .question {
  color: #a9cc96;
}
.-ch3 .question {
  color:#8cc1ce;
}
.-ch4 .question {
  color:#8daed8;
}
.-ch5 .question {
  color:#9898c7;
}
.-ch6 .question {
  color:#bf9ac8;
}
.-ch7 .question {
  color:#999;
}
.question .img {
  width: 200px;
}
.btnChoice {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 32px;
}
.btnChoice li {
  width: 220px;
}
.btnChoice .a {
  display: block;
  background: #ccc;
  border: 2px solid #999;
  border-radius: 10px;
  font-family: "新丸ゴ M", sans-serif;
  font-size: 18px;
  text-align: center;
  line-height: 46px;
}
.btnChoice li:nth-child(1) .a {
  background: #FFF4E9;
  border-color: #FAE4D2;
  color: #E58627;
}
.btnChoice li:nth-child(2) .a {
  background: #EFF9EA;
  border-color: #D8EBCE;
  color: #58A62E;
}
.btnChoice li:nth-child(3) .a {
  background: #ECF8FB;
  border-color: #D1E8ED;
  color: #39A4BF;
}
.btnChoice li:nth-child(4) .a {
  background: #EAEFF8;
  border-color: #D3DEEE;
  color: #4569A6;
}
@media (max-width: 1023px) {
  article {
    align-items: flex-start;
  }
  article section {
    width: 100vw;
    height: auto;
    transition: 0.5s cubic-bezier(1, 0, 0, 1);
  }
  .l-container {
    padding: 16px 16px 56px;
  }
  .question {
    height: 72px;
    font-size: 20px;
  }
  .question .-min {
    font-size: 12px;
  }
  .question sup {
    font-size: 12px;
  }
  .question .img {
    display: none;
  }
  .btnChoice {
    flex-wrap: wrap;
    gap: 16px;
    width: 220px;
    margin: 16px auto 0;
  }
}

/* cover */
.cover .l-container {
  max-width: 700px;
  margin: 0 auto;
  padding: 56px 0 0;
  font-family: "新丸ゴ R JIS2004", sans-serif;
}
.cover .head {
  position: relative;
  z-index: 1;
  width: 75%;
  margin-bottom: 24px;
}
.cover .-note {
  display: inline-block;
  margin-top: 8px;
  font-size: 16px;
}
.cover .img {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  width: 360px;
  height: 391px;
  text-align: center;
}
.cover .img img {
  width: 200px;
}
.cover.-ch1 .img {
  right: -20px;
}
.cover .next {
  position: relative;
  z-index: 1;
  margin-top: 32px;
}
.cover .next .a {
  display: block;
  width: 220px;
  background: #ECF8FB;
  border: 2px solid #D1E8ED;
  border-radius: 10px;
  color: #39A4BF;
  font-family: "新丸ゴ M", sans-serif;
  font-size: 18px;
  text-align: center;
  line-height: 46px;
}
@media (max-width: 1023px) {
  .cover .l-container {
    padding: 16px 16px 56px;
  }
  .cover .head {
    width: auto;
  }
  .cover p {
    padding: 0 16px;
    font-size: 15px;
  }
  .cover .-note {
    font-size: 13px;
  }
  .cover .-min {
    font-size: 13px;
  }
  .cover .img {
    display: block;
    position: static;
    width: 150px;
    height: auto;
    margin: 24px auto;
  }
  .cover .next {
    width: 220px;
    margin: 0 auto;
  }
}

/* start */
.cover.-start .title {
  position: relative;
  z-index: 1;
  width: 85%;
  margin-bottom: 16px;
}
.cover.-start .lead {
  position: relative;
  z-index: 1;
}
.cover.-start .btnChoice {
  justify-content: flex-start;
}
.cover.-start .btnChoice li:nth-child(1) .a {
  background: #FAEBEB;
  border-color: #F4D8D8;
  color: #C73C3C;
}
.cover.-start .btnChoice li:nth-child(2) .a {
  background: #FFF4E9;
  border-color: #FAE4D2;
  color: #E58627;
}
.cover.-start .contentsNote {
  position: relative;
  z-index: 1;
  margin-top: 16px;
  font-family: "新丸ゴ R JIS2004", sans-serif;
  font-size: 11px;
}
.cover .link {
  position: relative;
  z-index: 1;
  font-family: "新丸ゴ R JIS2004", sans-serif;
  font-size: 11px;
}
.cover .link a {
  color: #333;
}
.cover .link a::before {
  content: '';
  opacity: 0.8;
  display: inline-block;
  margin-right: 4px;
  border-top: 3px solid transparent;
  border-bottom: 3px solid transparent;
  border-left: 6px solid #ff8080;
  vertical-align: middle;
  transform: translate(0, -2px);
}
@media (max-width: 1023px) {
.cover.-start .l-container {
    padding: 16px;
  }
  .cover.-start .group {
    display: block;
    margin-bottom: 24px;
  }
  .cover.-start .title {
    width: auto;
    margin-bottom: 16px;
  }
  .cover.-start .group .img {
    width: auto;
    margin: 0;
  }
  .cover.-start .lead {
    margin-bottom: 24px;
  }
}

/* end */
.cover.-end .l-container {
  max-width: none;
  padding: 18px;
}
.cover.-end .endtxt {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  width: 100%;
  height: 280px;
  color: #C73C3C;
  font-size: 32px;
  text-align: center;
  line-height: 1.5;
}
.cover.-end .img {
  display: block;
  position: static;
  width: 200px;
  height: auto;
}
.cover.-end .btnResult {
  margin-top: 32px;
  text-align: center;
}
.cover.-end .btnResult button {
  display: inline-block;
  width: 300px;
  background: #FAEBEB;
  border: 2px solid #F4D8D8;
  border-radius: 10px;
  color: #C73C3C;
  font-family: "新丸ゴ M", sans-serif;
  font-size: 18px;
  text-align: center;
  line-height: 46px;
  cursor: pointer;
  transition: .4s ease;
}
.cover.-end .btnResult button:hover {
  opacity: 0.6;
}
.cover.-end .btnResult button:not(.-active) {
  opacity: .3;
  pointer-events: none;
}
.cover.-end .link {
  margin-top: 16px;
  text-align: center;
}
@media (max-width: 1023px) {
  .cover.-end .l-container {
      padding: 56px 16px;
    }
  .cover.-end .endtxt {
    display: block;
    height: auto;
    font-size: 16px;
  }
  .cover.-end .img {
    width: 150px;
    margin: 24px auto 0;
    text-align: center;
  }
  .cover.-end .btnResult {
    margin-top: 24px;
  }
  .cover.-end .btnResult button {
    width: 220px;
  }
}


/* ---------------- result */
.resultView {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
@media (max-width: 1023px) {
  .resultView {
    display: none;
  }
}


/* ---------------- result */
/* layout */
#resultWrap {
  padding: 24px 0;
  font-size: 16px;
}
#resultWrap .l-container {
  max-width: 1012px;
  margin: 0 auto;
  padding: 0 16px;
}
.resultArea {
  background: rgba(255, 255, 255, 0.5);
  border: 2px solid rgba(255, 128, 128, 0.2);
  border-radius: 20px;
}
@media screen and (max-width: 767px) {
  #resultWrap {
    padding: 60px 0 0;
  }
  #resultWrap .l-container {
    padding: 0;
  }
  .resultArea {
    background: rgba(255, 255, 255, 0.5);
    border: none;
    border-radius: 0;
  }
}

/* header */
.resultHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 56px;
  padding: 0 18px;
  border-bottom: 2px solid rgba(255, 128, 128, 0.2);
  font-size: 14px;
}
.resultHeader .date {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  font-size: 13px;
}
@media screen and (max-width: 767px) {
  .resultHeader {
    display: block;
    height: auto;
    padding: 8px 16px;
  }
  .resultHeader h1 {
    margin-bottom: 4px;
  }
  .resultHeader .date {
    font-size: 12px;
  }
}

/* footer */
.resultFooter {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
}
.resultFooter .kokoro {
  width: 129px;
}
.resultFooter .goverment {
  width: 120px;
}
@media screen and (max-width: 767px) {
  .resultFooter {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    margin-top: 0;
    padding: 0 16px;
    background: url("../img/common/bg.jpg");
    border-bottom: 2px solid rgba(255, 128, 128, 0.2);
  }
  .resultFooter .kokoro {
    width: 112px;
  }
  .resultFooter .goverment {
    width: 80px;
  }
}

/* main */
.resultArea main {
  padding: 18px;
}
@media screen and (max-width: 767px) {
  .resultArea main {
    padding: 16px 16px 0;
  }
}

/* head */
.resultHead {
  margin-bottom: 18px; 
}
.resultHead .head {
  margin-bottom: 20px;
  padding: 20px;
  border-radius: 10px;
  font-size: 28px;
  text-align: center;
}
.resultHead .head .shoulder {
  display: block;
  margin-bottom: 8px;
  font-size: 18px;
}
.resultHead .head .score {
  display: inline-block;
  width: 37px;
  margin: 0 5px;
  background: #fff;
  border-radius: 4px;
  font-size: 26px;
  text-align: center;
  line-height: 37px;
}
.resultHead .head .note {
  display: inline-block;
  margin-left: 16px;
  padding: 0 8px;
  background: #fff;
  border-radius: 4px;
  color: #666;
  font-size: 11px;
  line-height: 24px;
  vertical-align: middle;
}
.result1 .resultHead .head {
  background: rgba(195 210 135 / 20%);
  color: #95c17d;
}
.result2 .resultHead .head {
  background: rgba(238 190 47 / 20%);
  color: #e5b217;
}
.result3 .resultHead .head {
  background: rgba(244 166 117 / 20%);
  color: #d6893d;
}
.result4 .resultHead .head {
  background: rgba(235 145 159 / 20%);
  color: #d97b87;
}
@media screen and (max-width: 767px) {
  .resultHead .head {
    margin-bottom: 16px;
    padding: 16px;
    font-size: 20px;
  }
  .resultHead .head br {
    display: none;
  }
  .resultHead .head .shoulder {
    font-size: 13px;
  }
  .resultHead .head .score {
    width: 24px;
    font-size: 18px;
    line-height: 24px;
  }
  .resultHead .head .note {
    margin-left: 8px;
    padding: 0 4px;
    transform: translate(0, -2px);
  }
}

/* chart */
.resultChart {
  margin-bottom: 40px;
}
.resultChart .wrap {
  display: flex;
  position: relative;
  padding: 24px 0 56px;
  border: 2px solid #f9eeea;
  border-radius: 10px;
}
.resultChart .group {
  flex: 1;
  padding: 0 24px;
}
.resultChart .group + .group {
  border-left: 1px solid #e6e6e6;
}
.resultChart .head {
  margin-bottom: 16px;
  font-size: 18px;
  text-align: center;
}
.resultChart .head .step {
  display: block;
}
.resultChart .head .-min {
  font-size: 14px;
}
.resultChart .img {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  margin-bottom: 24px;
}
.resultChart .img .scale {
  width: 30px;
}
.resultChart .img .level {
  width: 260px;
}
.resultChart .img .scale + .level {
  width: 228px;
}
.resultChart .result {
  color: #999;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  font-size: 13px;
}
.resultChart .result table {
  width: 100%;
  border-top: 1px solid #ddd;
  border-collapse: collapse;
}
.resultChart .result th {
  padding: 3px 8px 3px 20px;
  border-bottom: 1px solid #ddd;
  font-weight: 400;
  text-align: left;
}
.resultChart .result td {
  width: 80px;
  padding: 3px 0;
  border-bottom: 1px solid #ddd;
  text-align: left;
}
.resultChart .result .-on td,
.resultChart .result .-on th {
  background: #f9eeea;
  color: #e4957b;
  font-weight: 700;
}
.resultChart .result .-on th {
  position: relative;
}
.resultChart .result .-on th::before {
  content: url("../img/common/ico_check.svg");
  position: absolute;
  top: 50%;
  left: 6px;
  width: 10px;
  transform: translate(0, -50%);
}
.resultChart .note {
  position: absolute;
  bottom: 16px;
  right: 24px;
  color: #e4957b;
  font-size: 12px;
}
.resultChart .note::before {
  content: url("../img/common/ico_check.svg");
  display: inline-block;
  padding: 2px 6px;
  margin-right: 6px;
  background: #f9eeea;
  vertical-align: middle;
}
@media screen and (max-width: 1023px) {
  .resultChart .wrap {
    display: block;
  }
  .resultChart .group {
    max-width: 480px;
    margin: 0 auto;
  }
  .resultChart .group + .group {
    margin-top: 32px;
    border: none;
  }
}
@media screen and (max-width: 767px) {
  .resultChart .group {
    padding: 0 16px;
  }
}

/* comment */
.resultComment {
  margin-bottom: 32px;
  padding: 0 20px;
}
.resultComment .head {
  margin-bottom: 8px;
  font-size: 22px;
  text-align: center;
}
.result1 .resultComment .head {
  color: #95c17d;
}
.result2 .resultComment .head {
  color: #e5b217;
}
.result3 .resultComment .head {
  color: #d6893d;
}
.result4 .resultComment .head {
  color: #d97b87;
}
.resultComment p:not(.head) {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.resultComment em {
  color: #a34646;
  font-style: normal;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .resultComment {
    padding: 0 16px;
    font-size: 14px;
  }
  .resultComment .head {
    font-size: 16px;
  }
}

/* advice */
.resultAdvice {
  margin-bottom: 40px;
}
.resultAdvice .btnAdvice {
  text-align: center;
}
.resultAdvice .btnAdvice a {
  display: inline-block;
  width: 100%;
  max-width: 300px;
  background: #FAEBEB;
  border: 2px solid #F4D8D8;
  border-radius: 10px;
  color: #C73C3C;
  font-size: 18px;
  text-align: center;
  line-height: 46px;
}

/* save */
.resultSave {
  margin: 0 20px;
  padding: 20px 0 0;
  border-top: 2px solid #f9eeea;
}
.resultSave .attention {
  margin-bottom: 32px;
  color: #A34646;
  font-size: 12px;
}
.resultSave .attention .head {
  margin-bottom: 8px;
  font-size: 18px;
}
.resultSave .download {
  font-size: 12px;
}
.resultSave .download .head {
  margin-bottom: 8px;
  font-size: 13px;
}
.resultSave .download p:not(.head) {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.resultSave .download .note {
  margin-top: 8px;
}
.resultSave .btnGroup {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 32px;
  margin-top: 20px;
}
.resultSave .btnGroup a,
.resultSave .btnGroup .a {
  display: inline-block;
  width: 220px;
  background: #FAEBEB;
  border: 2px solid #F4D8D8;
  border-radius: 10px;
  color: #C73C3C;
  font-size: 18px;
  text-align: center;
  line-height: 46px;
}
.resultSave .btnGroup .print .a {
  background: #FFF4E9;
  border-color: #FAE4D2;
  color: #E58627;
}
.resultSave .btnGroup .pdf a {
  background: #EFF9EA;
  border-color: #D8EBCE;
  color: #58A62E;
}
.resultSave .link {
  margin-top: 16px;
  text-align: center;
}
.resultSave .link a {
  position: relative;
  z-index: 1;
  color: #333;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  font-size: 11px;
}
.resultSave .link a::before {
  content: '';
  opacity: 0.8;
  display: inline-block;
  margin-right: 4px;
  border-top: 3px solid transparent;
  border-bottom: 3px solid transparent;
  border-left: 6px solid #ff8080;
  vertical-align: middle;
  transform: translate(0, -2px);
}
@media screen and (max-width: 767px) {
  .resultSave {
    margin: 0;
    padding: 40px 16px 0;
  }
  .resultSave .attention .head {
    font-size: 16px;
  }
  .resultSave .btnGroup .print {
    display: none;
  }
}

/* prev */
.resultPrev {
  margin-top: 16px;
}
.resultPrev a {
  color: #666;
  font-size: 12px;
}
.resultPrev a::before {
    content: '';
    opacity: 0.8;
    display: inline-block;
    margin-right: 8px;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-right: 10px solid #ff8080;
    vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .resultPrev {
    height: 48px;
    margin: 40px -16px 0;
    padding: 0 16px;
    background: url(../img/common/bg.jpg);
    border-top: 2px solid rgba(255, 128, 128, 0.2);
  }
  .resultPrev a {
    line-height: 48px;
  }
}
@media print {
  body {
    width: 980px;
  }
  #resultWrap {
    padding: 0;
  }
  #resultWrap .l-container {
    padding: 0;
  }
  .resultArea {
    border: none;
  }
  .resultHeader {
    border-bottom: none;
  }
  .resultHead .head {
    padding: 0;
  }
  .resultAdvice {
    display: none;
  }
  .resultSave {
    display: none;
  }
  .resultPrev {
    display: none;
  }
}


/* ---------------- advice */
/* layout */
.-advice #wrap {
  position: static;
  transform: none;
}
.-advice header {
  height: 48px;
}
.-advice footer ul {
  transform: none;
}
.-advice footer a {
  color: #666;
  font-size: 12px;
  line-height: 48px;
}
.-advice footer a::before {
  content: '';
  opacity: 0.8;
  display: inline-block;
  margin-right: 8px;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-right: 10px solid #ff8080;
  vertical-align: middle;
}
@media (max-width: 1023px) {
  .-advice article {
    height: auto;
  }
}

/* advice */
.advice {
  padding: 14px 20px 0;
}
.advice h1 {
  margin-bottom: 24px;
  padding-bottom: 8px;
  border-bottom: 4px solid #FF8080;
  font-size: 24px;
}
.advice h1 {
  margin-bottom: 24px;
  padding-bottom: 8px;
  border-bottom: 4px solid #FF8080;
  font-size: 24px;
}
.advice h1 .-min {
  font-size: 16px;
}
.advice h2 {
  position: relative;
  margin: 40px 0 24px;
  padding-bottom: 8px;
  border-bottom: 2px solid #EBE5D3;
  font-size: 18px;
}
.advice h2::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 0;
  width: 320px;
  height: 2px;
  background: #FF8080;
}
.advice h2 .-min {
  font-size: 14px;
}
.advice .lead {
  margin-bottom: 40px;
  font-family: "新丸ゴ R JIS2004", sans-serif;
  font-size: 16px;
}
.advice .linkGroup {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px 24px;
}
.advice .linkGroup .h {
  margin-bottom: 8px;
  font-family: "新丸ゴ R JIS2004", sans-serif;
  font-size: 14px;
  text-align: center;
  line-height: 1.5;
}
.advice .linkGroup a {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 80px;
  padding: 8px 8px 8px 56px;
  background: #fff;
  border: 2px solid #F2ECDA;
  border-radius: 10px;
  color: #333;
  font-size: 18px;
  line-height: 1.5;
}
.advice .linkGroup .img {
  width: 60px;
  height: 60px;
  background: #ccc;
}
.advice .linkGroup p {
  flex: 1;
}
.advice .linkGroup .shoulder {
  display: block;
  font-size: 14px;
}
@media (max-width: 1023px) {
  .advice {
    padding: 0;
  }
  .advice .linkGroup {
    grid-template-columns: 1fr;
    max-width: 458px;
    margin: 0 auto;
  }
}
@media (max-width: 767px) {
  .advice h1 {
    margin-bottom: 16px;
    padding-bottom: 8px;
    font-size: 22px;
  }
  .advice h2::after {
    width: 240px;
  }
 .advice .lead {
    font-size: 16px;
  }
  .advice .linkGroup a {
    padding: 8px 16px;
    font-size: 16px;
  }
  .advice .linkGroup .h {
    text-align: left;
  }
 .advice .linkGroup .img {
    width: 40px;
    height: 40px;
  }
  .advice h2 {
    font-size: 16px;
  }
}



/* ---------------- rate */
#rate {
  margin-top: 40px;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.rate .head {
  margin-bottom: 8px;
  font-size: 14px;
}
.rate .head::before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 8px;
  background: url("../img/common/ico_rate.png") no-repeat center center / contain;
  vertical-align: middle;
}
.rate .group {
  overflow: hidden;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  background: #f5f5f5;
  border-radius: 4px;
}
.rate .rateBtn {
  display: block;
  color: #666;
  font-size: 14px;
  text-align: center;
  line-height: 40px;
  cursor: pointer;
  transition: .4s ease;
}
.rate .rateBtn:hover {
  opacity: 0.6;
}
.rate .rateBtn + .rateBtn {
  border-left: 1px solid #e0e0e0;
}
.rate-comment {
  display: none;
  position: fixed;
  z-index: 10;
  top: 50%;
  left: 50%;
  width: 90%;
  max-width: 700px;
  padding: 24px 32px 32px;
  background: #f5f5f5;
  border-radius: 8px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  font-size: 14px;
  transform: translate(-50%, -50%);
}
.rate-head {
  margin-bottom: 16px;
  font-size: 24px;
}
.rate-comment p {
  margin-bottom: 8px;
  font-size: 14px;
}
.rate-comment textarea {
  outline: none;
  width: 100%;
  height: 118px;
  margin-bottom: 24px;
  padding: 8px;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.rate-comment .btnSubmit {
  display: block;
  width: 100%;
  max-width: 240px;
  margin: 0 auto;
  border-radius: 20px;
  background: #ff8080;
  color: #fff;
  font-size: 16px;
  text-align: center;
  line-height: 40px;
}
.rate-comment .btnClose {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 34px;
  height: 34px;
}
.rate-comment .btnClose::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background: #ff8080;
  transform: translate(0, -50%) rotate(45deg);
}
.rate-comment .btnClose::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background: #ff8080;
  transform: translate(0, -50%) rotate(-45deg);
}
@media (max-width: 767px) {
  .rate .head {
    font-size: 13px;
  }
  .rate .group {
    grid-template-columns: 1fr;
    border: 1px solid #e0e0e0;
  }
  .rate .rateBtn + .rateBtn {
    border-left: none;
    border-top: 1px solid #e0e0e0;
  }
  .rate-comment {
    padding: 40px 16px 32px;
  }
  .rate-head {
    font-size: 16px;
  }
  .rate-comment textarea {
    height: 80px;
  }
  .rate-comment .btnClose {
    width: 24px;
    height: 24px;
  }
}


#pdfWrap {
  width: 1012px;
  margin: 0 auto;
  padding: 0;
  font-size: 16px;
}
#pdfWrap .l-container {
  margin: 0 auto;
  padding: 0 16px;
}
.pdfArea{
  padding: 60px 40px;
}
.pdfHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}
.pdfHeader .kokoro {
  width: 129px;
}
.pdfHeader .kokoro img {
  width: 100%;
  height: auto;
}
.pdfHeader .text {
  width: 600px;
  font-family: "新丸ゴ M", sans-serif;
  font-size: 8pt;
}
.pdfHeader .goverment {
  width: 120px;
}
.pdftitle{
  margin-bottom: 10px;
}
.pdfHead {
  margin-bottom: 20px; 
}
.pdfHead .head {
  margin-bottom: 20px;
  padding: 20px;
  border-radius: 10px;
  font-size: 24px;
  text-align: center;
}
.pdfChart {
  margin-bottom: 20px;
}
.pdfChart .wrap {
  display: flex;
  position: relative;
  padding: 24px 0 56px;
  border: 2px solid #f9eeea;
  border-radius: 10px;
}
.pdfChart .group {
  flex: 1;
  padding: 0 24px;
}
.pdfChart .group + .group {
  border-left: 1px solid #e6e6e6;
}
.pdfChart .head {
  margin-bottom: 16px;
  font-size: 17px;
  text-align: center;
}
.pdfChart .head .step {
  display: block;
}
.pdfChart .head .-min {
  font-size: 14px;
}
.pdfChart .img {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  margin-bottom: 24px;
}
.pdfChart .result {
  color: #999;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  font-size: 12px;
}
.pdfChart .result table {
  width: 100%;
  border-top: 1px solid #ddd;
  border-collapse: collapse;
}
.pdfChart .result th {
  padding: 3px 8px 3px 20px;
  border-bottom: 1px solid #ddd;
  font-weight: 400;
  text-align: left;
}
.pdfChart .result td {
  width: 85px;
  padding: 3px 0;
  border-bottom: 1px solid #ddd;
  text-align: left;
  word-break: keep-all;
}
.pdfChart .result .-on td,
.pdfChart .result .-on th {
  background: #f9eeea;
  color: #e4957b;
  font-weight: 700;
}
.pdfChart .result .-on th {
  position: relative;
}
.pdfChart .result .-on th::before {
  content: url("../img/common/ico_check.svg");
  position: absolute;
  top: 11%;
  left: 6px;
  width: 10px;
  height: 8px;
  transform: translate(0, -11%);
}
.pdfChart .note {
  position: absolute;
  bottom: 16px;
  right: 24px;
  color: #e4957b;
  font-size: 12px;
}
.pdfChart .note::before {
  content: url("../img/common/ico_check.svg");
  display: inline-block;
  padding: 2px 6px;
  margin-right: 6px;
  background: #f9eeea;
  vertical-align: middle;
}
.pdfHead {
  margin-bottom: 18px; 
}
.pdfHead .head {
  margin-bottom: 15px;
  padding: 15px;
  border-radius: 10px;
  font-size: 20px;
  text-align: center;
}
.pdfHead .head .shoulder {
  display: block;
  margin-bottom: 8px;
  font-size: 15px;
}
.pdfHead .head .score {
  display: inline-block;
  width: 37px;
  margin: 0 5px;
  background: #fff;
  border-radius: 4px;
  font-size: 20px;
  text-align: center;
  line-height: 31px;
}
.pdfHead .head .note {
  display: inline-block;
  margin-left: 16px;
  padding: 0 8px;
  background: #fff;
  border-radius: 4px;
  color: #666;
  font-size: 11px;
  line-height: 24px;
  vertical-align: middle;
}
.result1 .pdfHead .head {
  background: rgba(195 210 135 / 20%);
  color: #95c17d;
}
.result2 .pdfHead .head {
  background: rgba(238 190 47 / 20%);
  color: #e5b217;
}
.result3 .pdfHead .head {
  background: rgba(244 166 117 / 20%);
  color: #d6893d;
}
.result4 .pdfHead .head {
  background: rgba(235 145 159 / 20%);
  color: #d97b87;
}
.pdfHead .body {
  padding: 0 20px;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  font-size: 20px;
}
.pdfComment {
  margin-bottom: 32px;
  padding: 0 20px;
  font-size: 15px;
}
.pdfComment .head {
  margin-bottom: 8px;
  font-size: 20px;
  text-align: center;
}
.result1 .pdfComment .head {
  color: #95c17d;
}
.result2 .pdfComment .head {
  color: #e5b217;
}
.result3 .pdfComment .head {
  color: #d6893d;
}
.result4 .pdfComment .head {
  color: #d97b87;
}
.pdfComment p:not(.head) {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.pdfComment em {
  color: #a34646;
  font-style: normal;
  font-weight: 700;
}
.pdfFooter {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
}
.pdfFooter .date {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  font-size: 8px;
}
.copy{
  font-size: 70%;
}