@charset "utf-8";

/*------------------------------------------------------------
  トップ
------------------------------------------------------------*/

.adenqTop {
  display: flex;
  flex-flow: column;
  gap: 10px;
}

.adenqSummary {
  display: flex;
  flex-flow: column;
  gap: 5px;
  padding: 5px;
  border: 3px solid #d04040;
  background-color: #fff;
}

.adenqSummary__item {
  display: flex;
}

.adenqSummary__name {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100px;
  padding: 5px;
  font-size: 3.0rem;
  color: #fff;
  background: #d04040;
}

@media (max-width: 640px) {
  .adenqSummary__name {
    font-size: 2.4rem;
  }
}

.adenqSummary__value {
  width: calc(100% - 100px);
  padding: 10px;
  line-height: 1.8;
}

/*------------------------------------------------------------
  アンケート回答
------------------------------------------------------------*/

.adenqPlay {
  display: flex;
  flex-flow: column;
  gap: 10px;
}

/* 不要かも */
.adenqPlay th,
.adenqPlay td {
  border: 0;
  background: none;
}

/*------------------------------
  設問
------------------------------*/

.adenqQuestion {
  padding: 10px;
  border: 3px solid #d04040;
  background-color: #fff;
}

.adenqQuestion__body {
  display: flex;
}

.adenqQuestion__number {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100px;
  font-size: 2.4rem;
  color: #fff;
  background-color: #d04040;
}

.adenqQuestion__text {
  width: calc(100% - 100px);
  padding: 5px 10px 0px 10px;
  background-color: #fff;
}

/* 使ってない気がする */
.adenqQuestion a {
  margin: 0px 2px;
  padding: 0px 3px;
  background-color: #f5f5f5;
}

/* 使ってない気がする */
.adenqQuestion__add {
  padding: 5px 0px;
  border-width: 1px 0 0 0;
  border-style: solid;
  border-color: #ccc;
}

/*------------------------------
  エラー
------------------------------*/

.adenqError {
  margin-top: 10px;
  margin-bottom: 10px;
  padding: 10px 10px 0px 10px;
  font-size: 1.4rem;
  color: #666;
  line-height: 1.5;
  background-color: #eee;
}

.adenqError__heading {
  padding: 0px 0px 5px 0px;
  margin-bottom: 5px;
  font-size: 16px;
  border-bottom: 1px dotted #ccc;
}

.adenqError__text {
  color: #cc6633;
}

/*------------------------------
  回答
------------------------------*/

.adenqSelects {
  width: 100%;
  margin-bottom: 10px;
  font-size: 14px;
}

.adenqSelects table {
  width: 100%;
}

.adenqSelects th {
  padding: 5px;
  vertical-align: middle;
}

.adenqSelects td {
  padding: 5px;
}

.adenqSelects.isSA th {
  width: 20px;
}

.adenqSelects.isMA th {
  width: 20px;
}

.adenqSelects select {
  -webkit-appearance: auto;
  appearance: auto;
  cursor: pointer;
  width: 100%;
  max-width: 400px;
  padding: 10px;
  border: 1px solid #ccc;
  background-color: #fff;
}

@media (max-width: 640px) {
  .adenqSelects select {
    width: 100%;
    max-width: none;
  }
}

.adenqSelects input[type="radio"], .adenqSelects input[type="checkbox"] {
  -webkit-appearance: auto;
  appearance: auto;
  cursor: pointer;
}

.adenqSelects label {
  cursor: pointer;
  position: relative;
  display: block;
  padding: 6px 10px;
  border: 1px solid #ccc;
  border-radius: 6px;
  background: #fff;
}

.adenqSelects label:before {
  position: absolute;
  left: -10px;
  top: 9px;
  content: '';
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-right: 5px solid #ccc;
}

.adenqSelects label:after {
  position: absolute;
  left: -8px;
  top: 9px;
  content: '';
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-right: 5px solid #fff;
}

/*------------------------------------------------------------
  完了
------------------------------------------------------------*/

.adenqEnd {
  display: flex;
  flex-flow: column;
  gap: 10px;
}

/*------------------------------------------------------------
  汎用
------------------------------------------------------------*/

/*------------------------------
  　アンケート一覧
------------------------------*/

.adenqList table {
  width: 100%;
  table-layout: fixed;
  background: #fff;
}

.adenqList th, .adenqList td {
  padding: 5px;
  font-size: 1.4rem;
  line-height: 1.5;
  border: 1px solid #ccc;
}

.adenqList th {
  background-color: #f5f5f5;
}

.adenqList td {
  vertical-align: middle;
  background-color: #fff;
}

.adenqList__button {
  display: inline-block;
  padding: 5px;
  color: #fff;
  border-radius: 4px;
  background-color: #d04040;
}

@media (hover) {
  .adenqList__button:hover {
    filter: brightness(1.1);
  }
}

.adenqList__point {
  font-size: 1.8rem;
  color: #d10000;
}

.adenqList__blank {
  background-color: #f5f5f5 !important;
}

/*------------------------------
  　見出し
------------------------------*/

.adenqHeading {
  border-radius: 8px;
  background: #d04040;
}

.adenqHeading__label {
  padding: 10px;
  font-size: 2.0rem;
  color: #fff;
}

/*------------------------------
  　メッセージ
------------------------------*/

.adenqMessage {
  padding: 40px 20px;
  text-align: center;
  border-width: 1px 0px;
  border-style: solid;
  border-color: #ccc;
  background-color: #fff;
}

/*------------------------------
  　レクタングル広告の縦連続
------------------------------*/

.adenqVerticalAds {
  display: flex;
  flex-flow: column;
  gap: 10px;
}

/*------------------------------
  　文字の強調
------------------------------*/

.adenqFocus {
  color: #d10000;
}
