@charset "utf-8";
/***************************************************

  filename : body_contents.css;
***************************************************/
.con_repo{
  padding-bottom: 60px;
}
.contact_input{
  margin-top: 40px;
}
.con_det.con_repo .contactBox{
  padding-bottom: 40px;
  max-width: 800px;
}
/* 入力フォーム */
.con_repo .InputForm{
  width: 90%;
  display: flex;
  flex-wrap:wrap;
  justify-content: space-between;
  align-items: center;
  margin: 30px auto;
}
.con_repo .contactBoxInn{
  border: none;
  padding: 0px;
}
.con_repo h1.conTitle{
  margin-top : 30px;
  padding-left: 30px;
}

/* フォームタイトル */
.con_repo p.contactTtitle{
  font-size: 36px;
  margin:30px 20px 0px;
  position:relative;
  padding: 8px 8px 10px;
}
.con_repo p.contactTtitle:before{
  position: absolute;
  content: 'record';
  font-size:20px;
  color : #7AD64B;
  top: -20px;
  left: 8px;
}

/* 入力欄 */
.con_repo .InputForm dl{
  width: 30%;
  display: flex;
  align-items: center;
  border: none;
  margin: 0;
  padding: 1rem 0;
}
.con_repo .InputForm dl dt {
  background: #F5F5F5;
  border-radius: 5px;
  padding: 8px;
  margin-bottom: 0;
}
.con_repo .InputForm dl dt p{
  font-size: 14px;
}
.con_repo .InputForm dl dt span.NewIcBg{
  display: none;
}
.con_repo .InputForm dl dd{
  padding-left:8px;
}
.con_repo .InputForm dl dd input{
  background: none;
}

/* 合計得点 */
.con_repo .InputForm dl:nth-child(29),
.con_repo .InputForm dl:nth-child(30),
.con_repo .InputForm dl:nth-child(31),
.con_repo .InputForm dl:nth-child(32),
.con_repo .InputForm dl:nth-child(33),
.con_repo .InputForm dl:nth-child(34){
    opacity: 0;
    height: 0px;
}

@media screen and (max-width:540px){
  .con_repo .InputForm dl{
    width: 100%;
  }
}
/* 完了ボタン */
.con_repo button.contactRegBt,
.con_repo button.sbmCpBt{
 background: var(--app-main-txt);
}

/* 確認 */
.con_repo .CautTxt{
  border: none;
  width: 97%;
  background: #F1FBED;
}

/* 完了画面 */
.contact_save .contactBox .articleBox{
  text-align: center;
}
.contact_save .contactBox img{
  width: 450px;
  margin: 30px auto;
}

/* 出力欄 */
.my_report .mypage_contact{
}
.my_report .mypage_contact_item{
  overflow-x: scroll;
}
.my_report .mypage_contact_item_in{
  display: flex;
  background: #F7F7F7;
  border-radius: 8px;
  flex-shrink: 0;
}
/* PCでは examSlider を透過扱いにし、mypageBox を従来通り mypage_contact_item_in 直下の flex 子として扱う */
.my_report .examSlider{
  display: contents;
}
.my_report .exam.mypage_contact_item{
  width: 900px;
}
.my_report .mypageBoxTop{
  padding-top: 103px;
  width: 60px;
}
.my_report .mypageBoxTop ul li{
  font-size: 14px;
  padding: 5.5px 12px;
  text-align: center;
}
.my_report .mypage_contact .mypageBox{
  border-left: 1px solid #DDDDDD;
  margin: 0;
  flex: 1;
}
.my_report .systemFotmTitle{
  font-size: 20px;
}
.my_report .mypageBoxDet{
  background: none;
}
.my_report .mypageBoxDet dl{
  padding: 0;
  width: calc(80% / 3);
  justify-content: space-between;
  align-items: baseline;
}
.my_report .mypageBoxDet dt,
.my_report .mypageBoxDet dd{
  font-size: 11px;
  min-width: unset;
  text-align: right;
  flex: 1;
  padding-left: 0;
  padding-right: 0;
}
.my_report .mypageBoxDet dt{
  font-size: 14px;
  text-align: left;
}
.my_report .mypageBoxDet .smallchar{
  font-size: 8px;
}
.my_report .mypageOrdBox{
  border: none;
  background: none;
  padding: 0px;
}
.my_report .mypageOrdBoxInn,
.my_report .calculation{
  background: none;
  border: none;
  margin: 0;
  padding: 0px;
  display: flex;
  flex-wrap:wrap;
  align-items: center;
}
.mypageBoxDet ul{
  display: flex;
  justify-content: space-around;
}
.mypageBoxDet ul li{
  font-size: 15px;
}

/* スマホ表示：ラベル列（物理・化学〜合計等）を固定し、各試験をスライド形式で1件ずつ切り替え */
@media screen and (max-width: 600px){
  .my_report .mypage_contact_item{
    overflow: hidden;
  }
  .my_report .exam.mypage_contact_item{
    width: auto;
  }
  .my_report .mypage_contact_item_in{
    align-items: stretch;
  }
  .my_report .mypageBoxTop{
    flex: 0 0 auto;
  }
  /* ラベル列はスクロール対象外。examSlider だけが横スクロール（スナップ）する */
  .my_report .examSlider{
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }
  .my_report .mypage_contact .mypageBox{
    flex: 0 0 100%;
    width: 100%;
    min-width: 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
  /* 必須/理論/実践の3列を狭い横幅に収めるための詰め */
  .my_report .mypageBoxDet dl{
    width: 33.3333%;
    min-width: 0;
    display: flex;
    padding: 0 8px;
  }
  .my_report .mypageBoxDet dt,
  .my_report .mypageBoxDet dd{
    font-size: 10px;
    min-width: 0;
  }
  .my_report .mypageBoxDet dt{
    font-size: 11px;
    text-align: center;
  }
  .my_report .mypageBoxDet .smallchar{
    font-size: 7px;
  }
  .my_report .mypageBoxTop ul li{
    font-size: 11px;
  }
}

/* 編集する */
.report_edit_add a{
  background: #fff;
  color: var(--app-main-txt);
  border: 1px solid var(--app-main-txt);
  border-radius: 50px;
  display: block;
  width: fit-content;
  padding: 9px 25px;
  margin: 25px auto 0;
  line-height: 1;
}
.report_edit_add a img{
  width: 17px;
  height: 17px;
}
