/*変更しない*/
.hide {
  display: none;
}

/*=====共通=====*/
h1.portfolio_heading01 {
  font-weight: bold;
  background-color: #e60000;
  color: #fff;
}

/*=====診断ページ=====*/
.question-select {
  margin: 16px 0;
}
p.q-number{
  font-weight: bold;
}
p.q-number span{
  color: #8d8d8d;
}
.q-detail {
  font-weight: bold;
}
.question-select ol {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.question-select button {
  border: #8d8d8d 1px dotted;
  cursor: pointer;
  font-size: 16px;
  font-weight: bold;
  width: 100%;
  color: #8d8d8d;
  text-align: left;
}
.question-select button.is-selected {
  background: #F8DEDE;
  border: #e60000 1px solid;
  color: #000;
}
button.button--back {
  border:1px solid #e60000;
  color: #000;
}
button.button--back::before {
  border-color: transparent #e60000;
}
button.button--back:hover {
  background-color: #e60000;
  color: #fff;
  }
button.button--back:hover::before {
  border-color: transparent #fff;
  }
button.button-primary {
  background-color: #e60000;
  border:1px solid #e60000;
}
button.button-primary:hover {
  color: #e60000;
  background-color: #fff;
}
button.button-primary:hover::before {
  border-color: transparent #e60000;
  }

  /*=====結果ページ=====*/
div.result_box {
  display: flex;
  align-items: center;
  justify-content: center;
}
  .box_btn a.black_btn{
  color: #333;
  }
  p.service-entrance__message{
    font-weight: bold;
    text-align: center;
  }

@media screen and (max-width: 767.9px){
 /*　画面サイズが767.9pxまではここを読み込む　*/

/*=====共通=====*/
  h1.portfolio_heading01 {
  font-size: 2rem;
  line-height: 3rem;
  padding: 10px;
  }
  h1.portfolio_heading01 span {
  font-size: 1.8rem;
  }
/*=====診断ページ=====*/
  p.q-number{
  font-size: 1.8rem;
}
  div.button-box{
    display: flex;
    flex-direction: column-reverse;
    row-gap:10px;
  }
  div.question-text,div.question-select,div.button-box{
  margin-right: 2rem;
  margin-left: 2rem;
  }
  .question-select ol{
  margin: 4rem 0;
  }
  .question-select button{
  padding: 1rem 1rem 1rem 3rem;
  }

  /*=====結果ページ=====*/
  h2.portfolio_heading02 {
  font-size: 20px;
  font-weight: bold;
  }
  section.ly-contents.ly-contents_short,div.box-border{
  margin-right: 2rem;
  margin-left: 2rem;
  }
  .box_btn .m-scope_btn{
  padding: 10px;
  margin: 0 auto;
  max-width: 300px;
  }
  .box_btn .m-scope_btn a span {
  font-size: 1.5rem;
  line-height: 2rem;
  }
  div.result_box {
  flex-direction: row;
}
  div.result_box p {
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 2.5rem;
  padding-left: 1rem;
}
  div.u-center.u-bold{
  margin-top: 1.5rem;
  }
  .box_btn a.black_btn{
  font-size: 1.8rem;
  }
  
  div.box.ly-contents__block{
  margin: 5rem 2rem;
  }
  ul.list-icon{
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap:2rem;
  }
  p.service-entrance__message{
    margin: 1.5rem 0 -0.8rem;
    font-size: 1.5rem;
  }
  p.service-entrance__message span{
    font-size: 1.8rem;
  }
  div.service-entrance__box{
    margin-top: 2rem;
  }
  div.service-entrance__account {
    margin-bottom: 1.5rem;
  }
}

@media screen and (min-width: 768px), print{
  /*　画面サイズが768pxからはここを読み込む　*/
  
  /*=====共通=====*/
  h1.portfolio_heading01 {
  margin-bottom: 45px;
  font-size: 36px;
  line-height: 1;
  padding: 20px 30px;
  }
  h1.portfolio_heading01 span {
  font-size: 20px;
  }

  /*=====診断ページ=====*/
  .question-select li {
  width: 400px;
}
  p.q-number{
  font-size: 20px;
}
  .question-select ol{
  margin: 30px auto;
  }
  .question-select button{
  padding: 10px 10px 10px 20px;
  }

  /*=====結果ページ=====*/
  h2.portfolio_heading02 {
  margin-bottom: 45px;
  font-size: 25px;
  font-weight: bold;
  line-height: 1;
  }
  .ly-contents_short {
  width: calc(100% - 300px);
  margin: 50px auto;
  }
  div.box-column{
  align-items: center;
  }
  div.result_box p {
  font-size: 42px;
  font-weight: bold;
  padding-left: 20px;
  margin-bottom: 25px;
}
  a.link-text.u-bold{
    font-size: 18px;
  }
  .m-scope_btn a span {
  font-size: 17px;
  }
  div.u-center.u-bold{
  margin-top: 30px;
  }
  .box_btn a.black_btn{
  font-size: 20px;
  }
  
  div.service-entrance__box{
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap:0 15px;
  margin-top: 30px;
}
  p.service-entrance__message{
    margin-bottom: -12px;
    font-size: 18px;
  }
  p.service-entrance__message span{
    font-size: 22px;
  }
  a.button-account{
    width: 300px;
  }
}