/* メイン */
.main-container {
}

main-container-sp {
}

{*width768-949 タブレット*}
@media screen and (min-width:768px) {
  .main-container{
    margin-bottom: -64px;
  }
}
{*width950以上 PC*}
@media screen and (min-width:950px) {
  .main-container{
    margin-bottom: -64px;
z  }
}

/*  背景用CSS 上 */
.top_question_title_div{
  position: relative;
  content: '';
  top: 135px;
  left: 0;
  width: 100%;
  height: 7vw;
  background-color: #ffffff;
  text-align: center;
  line-height: 1.1;
  z-index: 0;
}

.top_question_title_div-sp{
  position: relative;
  content: '';
  left: 0;
  width: 100%;
  background-color: #ffffff;
  text-align: center;
  line-height: 1.1;
  z-index: 0;
  height: 14px;
  top: -19px;
}

/* アコーディオンメニュー */
details {
  border: 1px solid #ccc;
}
details:not(:last-child) {
  margin-bottom: 20px;
}

/**
 * list-style: none; ←デフォルト三角削除（Chrome非対応）
 * cursor: pointer; ←カーソルをポインターに
**/
details summary {
  list-style: none;
  cursor: pointer;
  padding: 20px;
  background: #e4e4e4;
  color: #242323;
  font-size: 2rem;
  font-weight: bold;
}

/**
 * Chrome用のデフォルト三角削除
**/
details summary::-webkit-details-marker {
  display: none;
}

/**
 * Font Awesomeのプラスアイコン使用
**/
details summary::before {
  font-family: FontAwesome;
  content: '\f067';
  margin-right: 20px;
}
/**
 * アコーディオンがオープン時はマイナスアイコンに変更
**/
details[open] summary::before {
  content: '\f068';
}

details p {
  margin: 0;
  padding: 20px;
}

/* QAメイン部分 */
.question-wrapper{
  position: relative;
  margin: auto;
  z-index: 1;
  margin-top: 180px;
  padding-bottom: 70px;
  width: 100%;
  background-color: #FFFAC7;
  display: flex;
  justify-content: center;
  padding-top: 104px;
}

.question-wrapper-sp{
  position: relative;
  margin: auto;
  z-index: 1;
  margin-top: 26px;
  background-color: #FFFAC7;
  padding-top: 29px;
  padding-bottom: 50px;
}

/* QAメイン部分 */
.blueback-wrapper{
  background-color: #E5F6FF;
  width: 100%;
  position: absolute;
  top: 402px;
  z-index: 0;
  height: 1428px;
  padding-bottom: 190px;
}

.blueback-wrapper-sp{
background-color: #E5F6FF;
  width: 100%;
  position: absolute;
  top: 208px;
  z-index: 0;
  padding-bottom: 190px;
  height: 1350px;
}

/* アコーディオンメニュー スマホ用 */
/*
.accordion {
  margin: 3em auto;
  max-width: 60vw;
}
*/
.toggle {
  display: none;
}
.option {
  position: relative;
  background-color: #ffffff;
  text-align: left;
  padding: 0px;
  max-width: 1200px;
  margin-left:50px;
  margin-right:50px;
  border-radius: 10px 10px 10px 10px;
  margin-bottom: 30px;
}

.title-sp {
  border-bottom: solid 1px #ccc;
  padding: 29px;
  display: block;
  font-size: 20px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.title,
  .content {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
/*    transition: all 0.3s;*/
  }
  .title {
/*    border-bottom: solid 1px #ccc;*/
    padding: 29px;
    display: block;
    font-size: 20px;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
  }
  .title::after,
  .title::before {
  content: "";
  position: absolute;
  right: 40px;
  top: calc(50% - 8px);
  width: 4px;
  height: 0.75em;
  background-color: #008BE7;
/*  transition: all 0.1s;*/
  font-size: 24px;
  font-weight: bold;
  }
  .title::after {
    transform: rotate(90deg);
  }
  .content {
    max-height: 0;
    overflow: hidden;
  }
  .content p {
    margin: 0;
    padding: 29px 1em 29px 1em;
    font-size: 0.9em;
    line-height: 1.5;
  }
  .toggle:checked + .title + .content {
    max-height: 500px;
/*    transition: all 1.5s;*/
    height: 90px;
/*    display: flex;*/
    display: contents;
    align-items: center;
    font-size: 20px;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
  }
  .toggle:checked + .title::before {
    transform: rotate(90deg) !important;
  }

.question-log-q-span{
  font-size:22px;
  font-weight: bold;padding: 0px 30px 0px 10px;
}

.answer-log-q-span{
  color: #FF9100;
  font-size: 24px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-weight: bold;
  padding: 26px 11px 0px 41px;
}

.answer-log-q-span-sp{
  font-size:22px;
  color: #FF9100;
  padding: 0px 11px 0px 11px;
}

.display-none{
  display:none;
}

/* スマホ用開閉テキスト */
.accordion-sp {
  min-width: 300px;
  width:100vw;
  margin: 0 auto;
  padding: 0;
}
.accordion-sp .ac-content {
  margin: 0 30px 0 30px;
  padding: 0;
}
.accordion-sp input {
  display: none;
}
.accordion-sp label {
  display: block;
  background: #ffffff;
  cursor: pointer;
  padding: 10px;
  box-sizing: border-box;
  height: 80px;
  text-align: left;
  border-bottom: 1px solid lightgray;
  border-radius: 13px 13px 13px 13px;
}

.accordion-sp label:hover {
  background: #ccc;
}
.accordion-sp .ac-cont {
  transition: 0.2s;
  height: 0;
  overflow: hidden;
  background: #ffffff;
  padding: 0 10px;
  box-sizing: border-box;
  width: 340px;
/*  border-radius: 0px 0px 13px 13px;*/
  border-radius: 13px;
}
.accordion-sp input:checked + .ac-cont {
  height: auto;
  margin-top:5px;
  padding: 20px 10px 20px 10px;
  box-sizing: border-box;
  padding-top: 20px;
/*  border-top: 1px dashed #707070;*/
  width: 100%;
}

.accordion-sp input:checked + label{
  border-radius:13px 13px 0px 0px ;
}


.question-log-q-span-sp {
    font-size: 22px;
    font-weight: bold;
    padding: 0px 15px 0px 10px;
}

/* 共通 */
/*
.big-bold-font-80-blue{
  color: #008BE7;
  font-size: 20px;
}

.big-bold-font-120-blue{
  color:#008BE7;
  font-size:120%;
  font-weight:bold;
}
*/

/************/
/* フォント */
/************/
/*
.answer-log-q-span{
  font-weight: bold;
  padding: 0px 10px 0px 14px;
  font-size: 20px;
  color: #008BE7;
}
*/

.font-bold-blue{
  color: #167fd8;
  font-weight: bold;
}
.font-size-70percent{
  font-size:70%
}
.font-size-80percent{
  font-size:80%
}
.font-size-90percent{
  font-size:90%
}
.font-size-100percent{
  font-size:100%
}
.font-size-120percent{
  font-size:120%
}

.font-notosansjp-bold-24{
}

.fonto-notosansjp-bold-30{
}

.font-noto-bold-16{
}

/* 游ゴシック */
.font-bold-white{
  color:#ffffff;
  font-weight:bold;
  font-family:游ゴシック
}

.font-bold-gochic-white{
  color: #ffffff;
  font-weight: bold;
  font-family: 游ゴシック;
  font-size:20px;
}

.font-bold-gochic-white-little{
  color: #ffffff;
  font-weight: bold;
  font-family: 游ゴシック;
  font-size:10px;
}

.font-bold-gochic-white-little-9{
  color: #ffffff;
  font-weight: bold;
  font-family: 游ゴシック;
  font-size:9px;
}

/*************/
/* mobo-bold */
/*************/
.font-mobo-bold-12{
  font-size:12px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
}

.font-mobo-bold-16{
  font-size:16px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
}

.font-mobo-bold-18{
  font-size:18px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
}

.font-mobo-bold-20{
  font-size:20px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
}

.font-mobo-bold-24{
  font-size:24px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
}

.font-mobo-bold-28{
  font-size:28px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
}

.font-mobo-bold-40{
  font-size:40px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
}

/*************/
/* noto bold */
/*************/
.font-noto-bold-12{
  font-size:12px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.font-noto-bold-16{
  font-size:16px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.font-noto-bold-18{
  font-size:18px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.font-noto-bold-21{
  font-size:21px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.font-noto-bold-24{
  font-size:24px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.font-noto-bold-40{
  font-size:40px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

/*************/
/* noto medium */
/*************/
.font-noto-medium-12{
  font-size:12px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.font-noto-medium-14{
  font-size:14px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.font-noto-medium-18{
  font-size:18px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.font-noto-mediumu-20{
  font-size:20px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.font-noto-mediumu-21{
  font-size:20px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.font-hiragi{
  font-style:"���S�V�b�N","�q���M�m�p�S Pro W3","Hiragino Kaku Gothic Pro","���C���I",Meiryo,"�l�r �o�S�V�b�N",sans-serif
}

/* その他 */
.font-16-blue-notobold{
  color: #008BE7;
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  line-height: 1.5;
}

.big-bold-font-200-black{
  font-size:200%;
  font-weight:bold;
}
.padding-up-down-5{
  padding:5px 0px 5px 0px;
}

/*************/
/* font-color */
/*************/
.font-color-blue{
  color: #FF9100;
}

/********/
/* flex */
/********/
.flex{
  display:flex;
}

.flex-center{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.flex-center-left{
  display: flex;
  justify-content: center;
  align-items: left;
  width: 100%;
}

/************/
/* position */
/************/
.relative{
  position:relative;
}

/************/
/* z-index */
/************/
.zindex0{
  z-index:0;
}
.zindex1{
  z-index:1;
}
.zindex2{
  z-index:2;
}

/********/
/* hr */
/********/
.dashed-center-95{
  border: none;
  border-bottom: 1px dashed #707070;
  width: 95%;
  margin: auto;
}

/******************/
/* アコーディオン */
/******************/
.question-lebel{
  position: relative;
  top: 12px;
  left: 3%;
}

.answer-message-area{
  margin-top: -26px;
  margin-bottom: 10px;
  margin-left: 60px;
}

.question-message-area{
  margin-top: 0px;
  margin-left: 61px;
  height: 0px;
  vertical-align: middle;
  display: flex;
  justify-content: left;
  align-items: center;
}

.answer-lebel{
  position: relative;
  top: 0px;
  left: 10px;
}

/*******/
/* css */
/*******/
.footer-center-btn {
    margin-bottom: 15px;
    padding: 14px 0px 11px 0px;
    width: 256px;
    color: #004DBE;
    background: #FFF;
    font-size: 15px;
    font-weight: bold;
    border: 0px;
    border-radius: 24px;
    cursor: pointer;
}

.footer-center {
  text-align: center;
  margin-bottom: 35px;
}

