@charset "UTF-8";

/*基本設定
=========================================*/
.chart_container {
  position: relative;
  width: 100%;
}

.chart_btn_list {
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}

.show {
  width: 100%;
}

.btn {
  position: relative;
  transition: 0.1s all ease-in-out;
}

/*=========================================================
	診断チャート
=========================================================*/
#chart {
  padding: 18% 0;
}
#chart .chart-title-img {
  position: absolute;
}
#chart .title-l-img {
  width: 25vw;
  left: -5vw;
  top: -10vw;
}
#chart .title-r-img {
  width: 20vw;
  right: 0;
  bottom: -8vw;
}

/*診断コンテンツ
----------------------------------------------- */
/*診断タイトル*/
.chart_title {
  font-size: 4.5vw;
  margin-bottom: 7vw;
  box-sizing: border-box;
  line-height: 1.6;
}

.q-icon {
  position: relative;
  display: inline-block;
}

/*回答リストボックス*/
.chart_btn_list-bx {
  padding: 4vw;
  box-sizing: border-box;
}

.chart_btn_list-inbx {
  background: #fff;
  padding: 6vw;
  box-sizing: border-box;
}

/*診断ボタン
----------------------------------------------- */
/*回答リスト*/
.chart_btn_list {
  row-gap: 10vw;
}

.chart_btn_list-item {
  width: 100%;
  background: #ccc;
  border-radius: 10px;
}

/*回答ボタン*/
.answer_btn {
  border-radius: 10px;
  box-sizing: border-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  -js-display: flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  background: #f2f2f2;
  position: relative;
  line-height: 1.5;
  padding: 5vw 2vw;
  top: -4px;
  font-size: 4.2vw;
}
.answer_btn:hover {
  top: 0;
  border: solid 5px #f0e9de;
  box-sizing: border-box;
  background: #ccc;
  color: #fff;
}

/*戻るボタン*/
.btn_wrp {
  text-align: center;
  margin-top: 10vw;
}

.more_btn {
  width: auto;
  box-sizing: border-box;
  display: inline-block;
  vertical-align: middle;
  background: #fff;
  width: 80%;
  padding: 3vw 4vw;
  font-weight: 700;
  font-size: 4vw;
  border: solid 1px #ccc;
  position: relative;
}
.more_btn span {
  color: #ccc;
}

.line_icon:before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 4vw;
  height: 1px;
  background: #ccc;
}

.wht_line:before {
  background: #fff;
}

.gold_btn {
  background: #ccc;
  border: solid 1px #ccc;
}
.gold_btn span {
  color: #fff;
}

.red_btn {
  background: #e70017;
  border: solid 1px #e70017;
}
.red_btn span {
  color: #fff;
}
.red_btn:hover {
  background: rgba(231, 0, 23, 0.1);
}
.red_btn:hover:before {
  background: #e70017;
}
.red_btn:hover span {
  color: #e70017;
}

/*診断結果
----------------------------------------------- */
.result_chart {
  padding: 21vw 0 8vw;
  box-sizing: border-box;
}

.result_title {
  font-weight: 700;
  line-height: 1.6;
}
.result_title .result_title-icon {
  width: 16vw;
  height: 16vw;
  color: #fff;
  font-size: 3.5vw;
  line-height: 1.2;
  position: absolute;
  left: 0;
  top: 5vw;
  z-index: 10;
  background-color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
}
.result_title .sub {
  display: block;
  width: 100%;
  clear: both;
  margin: auto;
  padding: 2vw 3vw;
  text-align: center;
  font-size: 4vw;
  font-weight: 600;
  color: #fff;
  background: #ccc;
  margin-bottom: 6vw;
  position: relative;
  box-sizing: border-box;
}
.result_title .sub:before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -26px;
  border: solid 13px transparent;
  border-top: solid 13px #ccc;
  margin-left: -13px;
}
.result_title .main {
  display: block;
  text-align: center;
  font-size: 4.5vw;
  margin-bottom: 6vw;
  letter-spacing: 0.1rem;
}

.result_container {
  display: block;
}
.result_container .result_img {
  text-align: center;
  margin-bottom: 8vw;
}
.result_container .result_txt {
  margin-bottom: 6vw;
}
.result_container .price_bx {
  text-align: right;
  font-weight: 700;
  border-bottom: 1px solid #ccc;
  padding-bottom: 4vw;
  margin-bottom: 6vw;
}
.result_container .price_bx dt,
.result_container .price_bx dd {
  font-size: 4.5vw;
  display: inline-block;
  vertical-align: middle;
}
.result_container .price_bx dt {
  color: #ccc;
  margin-right: 4vw;
}
.result_container .coution-txt {
  font-size: 14px;
}

.result_btn-list {
  text-align: center;
}
.result_btn-list li {
  margin-bottom: 3vw;
}
.result_btn-list li:last-of-type {
  margin-bottom: 0;
}
.result_btn-list li .more_btn {
  width: 90%;
  font-size: 3.8vw;
}