@charset "utf-8";

#counsel.counsel-on {
  display: flex;
}

#counsel {
  position: fixed;
  left: 0;
  top: 0;
  display: none;
  justify-content: center;
  align-items: center;
  padding: 3rem;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.70);
  z-index: 999;
}

#counsel>div {
  position: relative;
  padding: 5rem 2rem 5rem 2rem;
  width: 100%;
  max-width: 120rem;
  height: 100%;
  border-radius: 3rem;
  background: #FFF;
  box-shadow: 0.4rem 0.4rem 2rem 0 rgba(0, 0, 0, 0.25);
  overflow: hidden;
}

#counsel>div:has(.board_list) {
  height: auto;
  max-height: 100%;
}

#counsel>div:has(.board_list>ul>li:nth-child(10)) {
  height: 100%;
}

#counsel .confirm {
  display: none;
  max-height: 48rem;
}

#counsel .board_write {
  margin-top: 0;
}

#counsel .tit-box {
  margin-bottom: 2rem;
}

#counsel .tit-box .tit {
  text-align: center;
  margin-bottom: 2rem;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 136%;
}

#counsel .tit-box .tit span {
  color: #23418D;  
}

#counsel .tit-box .txt {
  margin-top: 2rem;
  text-align: center;
  font-size: 1.7rem;
  line-height: 136%;
}

#counsel .tit-box .close {
  position: absolute;
  right: 1.5rem;
  top: 1.5rem;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 2rem;
  background: #363333 url(../img/counsel-close.svg) no-repeat center / 1.6rem;
}

#counsel .counsel-box {
  padding: 0 3rem 0 3rem;
  height: calc(100% - 5rem);
  overflow-x: hidden;
  overflow-y: auto;
}

#counsel .board_write ul li {
  padding: 0;
  border-color: #D4D4D4;
}

#counsel .board_write ul li dl {
  gap: 0;
  min-height: 5.7rem;
}

#counsel .board_write ul li dl dt {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0;
  padding: 1rem 1.5rem;
  width: 20rem;
  color: #222;
  text-align: center;
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 136%;
  background: #F5F5F5;
}

#counsel .board_write ul li dl dt .need {
  color: #C33030;
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 136%;
}

#counsel .board_write ul li dl dd {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  gap: 0.7rem;
  padding: 1rem 1.5rem;
}

#counsel .board_write ul li dl dd input[type=text],
#counsel .board_write ul li dl dd input[type=date] {
  margin: 0;
  height: 3.7rem;
  width: 0;
  min-width: 11rem;
  color: #555;
  font-size: 1.5rem;
  border-radius: 0.3rem;
  border-color: #D0D0D0;
  background: #fff;
}

#counsel .board_write ul li dl dd input[type=date] {
  min-width: 20rem;
}

#counsel .board_write ul li dl dd input[type=text]:only-child, 
#counsel .board_write ul li dl dd select:only-child {
  width: 100%;
}

#counsel .board_write ul li dl dd select {
  margin: 0;
  padding: 0 1rem;
  min-height: 3.7rem;
  min-width: 11rem;
  border-radius: 0.3rem;
  color: #555;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 136%;
  border-color: #D0D0D0;
  background: #fff;
}

#counsel .radio-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.8rem;
}

#counsel .radio-list li {
  position: relative;
  border: none;
}

#counsel .radio-list label {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  color: #555;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 136%;
}

#counsel .radio-list input {
  position: absolute;
  opacity: 0;
  z-index: -1;
}

#counsel .radio-list label::before {
  content: '';
  flex: 0 0 auto;
  display: block;
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 50%;
  border: 1px solid #919191;
}

#counsel .radio-list input[type=radio]:checked+label {
  color: #192E62;
  font-weight: 600;
}

#counsel .radio-list input:checked+label::before {
  border-color: #192E62;
  background: #192E62 url(../img/counsel-check.svg) no-repeat center / 1rem;
}

#counsel textarea {
  height: 12rem;
  color: #555;
  font-size: 1.5rem;
  border-radius: 0.3rem;
  border-color: #D0D0D0;
  resize: none;
}

#counsel .agree {
  margin-top: 2rem;
  padding: 0;
}

#counsel .agree .tit {
  margin-bottom: 0.5rem;
  text-align: left;
  padding-left: 2.8rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 136%;
  background: url(../img/sub/h5.svg) no-repeat 0 0.4rem / 1.8rem;
}

#counsel .agree .textarea {
  padding: 1.5rem;
  height: 28rem;
  color: #555;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 136%;
  border-radius: 0.3rem;
  border-color: #D0D0D0;
}

#counsel .agree .textarea textarea {
  padding: 0;
  height: 100%;
  color: #555;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 136%;
}

#counsel .agree .agree_txt {
  display: flex;
  margin-top: 0.5rem;
  color: #222;
  font-size: 1.7rem;
  line-height: 136%;
}

#counsel .agree .agree_txt label {
  color: #222;
  font-size: 1.7rem;
  line-height: 136%;
}

#counsel .agree .agree_txt input {
  margin-top: 0.3rem;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 0.2rem;
  border: 1px solid #919191;
}

#counsel .btn-box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

#counsel .btn-box a,
#counsel .btn-box button {
  display: block;
  padding: 1.3rem 3rem;
  color: #FFF;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 136%;
  border: none;
  border-radius: 0.6rem;
  background: #5685EA;
}

#counsel .btn-box .close {
  background: #484848;
}

#counsel .btn-box .list {
  color: #222;
  border: 1px solid #919191;
  background: #fff;
}

#counsel .btn-box .del {
  background: #18191F;
}

#counsel .counsel-confirm {
  text-align: right;
}

#counsel .counsel-confirm a {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding-bottom: 0.2rem;
  font-size: 1.7rem;
  font-weight: 600;
  line-height: 136%;
  border-bottom: 1px solid #222;
}

#counsel .counsel-confirm a::before {
  content: '';
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  background: url(../img/counsel-confirm.svg) no-repeat 0 0 / 100%;
}

@media screen and (max-width:1024px) {
  #counsel>div {
    padding: 3rem 1rem;
  }

  #counsel .confirm {
    max-height: 60rem;
  }
  
  #counsel .counsel-box {
    padding: 0 0.9rem;
    height: calc(100% - 9rem);
  }

  #counsel .tit-box .tit {
    padding-top: 2rem;
    font-size: 2.5rem;
  }
  
  #counsel .tit-box .tit span {
    display: block;
  }

  #counsel .board_write ul li {
    border-color: #747474;
  }

  #counsel .board_write ul li dl dt {
    width: 100%;
    /* border-bottom: 1px solid #D4D4D4; */
  }
  
  #counsel .board_write ul li dl dd  {
    margin-bottom: 2rem;
  }

  #counsel .board_write ul li dl dd select {
    flex: 1 1 auto;
    width: 100%;
    min-width: auto;
  }
  
  #counsel .board_write ul li dl dd input[type=text],
  #counsel .board_write ul li dl dd input[type=date] {
    flex: 1 1 auto;
    width: 100%;
    min-width: auto;
  }

  #counsel .btn-box a,
  #counsel .btn-box button {
    flex-basis: 50%;
    padding-left: 0;
    padding-right: 0;
  }
}