@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css");

.theme{
  border-bottom:solid 4px #022d46;
  padding-bottom:10px;
  margin-top:40px;
  margin-bottom:20px;
}

.theme h2{
  font-size:25px;
}


.earth{
  display:inline-block;
  width:40px;
  float:left;
}

.rotate {
    display: inline-block;
    transform: rotate(90deg);
}
.serector-container{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
    position: relative;
    margin:0 auto;
}

.stage-serector{
    width: 30%;
    min-width: 300px;
    text-align: center;
    border: 1px solid #022d46;
    padding: 10px;
    margin: 20px; 
}

.stage-serector:hover{
    background-color: #022d46;
    color: #fff;
}
.question-serector{
    width: 20%;
    text-align: center;
    padding: 10px;
    cursor:default;
    margin-top:20px;
}
.question-serector:hover{
    background-color: #022d46;
}
.question-serector:hover p{
    color: #fff;
}



.nonactive-question-serector p{
    color: #022d46;
}
.nonactive-question-serector{
    background-color: #b8b8b8;
}
.active-question-serector{
    background-color: #022d46;
}
.active-question-serector p{
    color: #fff;
}
.time-table-container{
    width: 90%;
    max-width: 1000px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin: auto;
    
}
.time-table{
    height: 1000px;
    width: 90%;
max-width: 400px;
    display: flex;
    position:relative;
    /* 雨天時を入れるための幅確保 */
    margin-top: 100px;
    padding-right: 30px;
    padding-top: 20px;
    border: 3px solid #022d46;
    margin-right: 20px;
    margin-left: 20px;
}

.time-table h1{
    color: #022d46;
    width: 100%;
    height: 30px;
    font-size: 30px;
    top:-50px;
    text-align: center;
    position: absolute;
}

.time-table-keion1{
  height: 500px;
  width: 90%;
max-width: 400px;
  display: flex;
  position:relative;
  /* 雨天時を入れるための幅確保 */
  margin-top: 100px;
  padding-right: 30px;
  padding-top: 20px;
  border: 3px solid #022d46;
  margin-right: 20px;
  margin-left: 20px;
}

.time-table-keion1 h1{
  color: #022d46;
  width: 100%;
  height: 30px;
  font-size: 30px;
  top:-50px;
  text-align: center;
  position: absolute;
}

.time-table-keion2{
  height: 1800px;
  width: 90%;
max-width: 400px;
  display: flex;
  position:relative;
  /* 雨天時を入れるための幅確保 */
  margin-top: 100px;
  padding-right: 30px;
  padding-top: 20px;
  border: 3px solid #022d46;
  margin-right: 20px;
  margin-left: 20px;
}

.time-table-keion2 h1{
  color: #022d46;
  width: 100%;
  height: 30px;
  font-size: 30px;
  top:-50px;
  text-align: center;
  position: absolute;
}

.time-table-keion3{
  height: 700px;
  width: 90%;
max-width: 400px;
  display: flex;
  position:relative;
  /* 雨天時を入れるための幅確保 */
  margin-top: 100px;
  padding-right: 30px;
  padding-top: 20px;
  border: 3px solid #022d46;
  margin-right: 20px;
  margin-left: 20px;
}

.time-table-keion3 h1{
  color: #022d46;
  width: 100%;
  height: 30px;
  font-size: 30px;
  top:-50px;
  text-align: center;
  position: absolute;
}

section h1{
    font-size: x-large;
 
}

.question1{
  width:85%;
  margin:0 auto;
}

.question2{
  width:85%;
  margin:0 auto;
}

.question3{
  width:85%;
  margin:0 auto;
}

.question4{
  width:85%;
  margin:0 auto;
}

.btn1 {
  text-align: center;
  font-size: 0.8rem;	/*文字サイズを120%に*/
  margin-top:1%;
}
.btn1 a {
  display: inline-block;text-decoration: none;
  background-color: #e4a7da;	/*背景色。css冒頭で指定しているprimary-colorを読み込みます*/
  color: #fff;	/*文字色。css冒頭で指定しているprimary-inverse-colorを読み込みます*/
  border-radius: 100px;	/*角を丸くする指定*/
  padding: 0.5em 2em;		/*上下、左右へのボタン内の余白*/
}

/*矢印アイコン*/
.arrow1::after {
  display: inline-block;
  font-family: "Font Awesome 6 Free";	/*Font Awesomeを使う指定*/
  font-weight: bold;
  content: "\f061";		/*アイコンのコード*/
  padding-left: 0.5em;	/*アイコンとテキストとの間のスペース*/
  transition: 0.3s;
}
.arrow1:hover::after {
  transform: translateX(0.2em);	/*マウスオン時に少しだけ移動する*/
}


@media (hover: hover) {
/* hover指定できるPCを想定したスタイル */
.event-cell:hover{
  background-color:#e4a7da;
}
}
@media (hover: none) {
/* hoverが使えないタッチ端末を想定した装飾 */
.event-cell:active{
  background-color:#e4a7da;
}
}

.cp_qa03 .cp_actab {
  position: relative;
  width: 100%;
  margin: 0 0 1em 0;
  color: #1b2538;
}
.cp_qa03 .cp_actab input {
  display: none;
}
/* 質問 */
.question-container{
  font-size: 100%;
}
.cp_qa03 .cp_actab label {
  font-weight: bold;
  line-height: 1.6em;
  position: relative;
  display: block;
  margin: 0 0 0 0;
  padding: 1em 2em 1em 2.5em;
  cursor: pointer;
  text-indent: 1em;
  border-radius: 0.5em;
  background: rgba(145, 88, 156, 0.1);
}
.cp_qa03 .cp_actab label::before {
  content: 'Q';
  font-family: serif;
  font-size: 1.5em;
  margin-left: -2em;
  padding-right: 0.5em;
}
.cp_qa03 .cp_actab label:hover {
  color: #e4a7da;
  transition: all 0.3s;
}
/* --質問の＋アイコン */
.cp_qa03 .cp_actab label::after {
  position: absolute;
  top: 0;
  right: 0;
  content: '+';
  font-size: 1.7em;
  font-weight: bold;
  line-height: 2em;
  display: inline-block;
  width: 2em;
  height: 2em;
  transition: transform 0.3s;
}
/* 答え */
.cp_qa03 .cp_actab .cp_actab-content {
  position: relative;
  overflow: hidden;
  max-height: 0;
  padding: 0 ;
  border-radius: 0 0 0.5em 0.5em;
  transition: max-height 0.2s;
}
.cp_qa03 .cp_actab .cp_actab-content::before {
  position: absolute;

  font-family: serif;
  font-size: 1.5em;
  margin: 0.4em 0 0 -1em;
  padding: 0;
}
.cp_qa03 .cp_actab .cp_actab-content p {
  margin: 1em;
  font-size: 86%;
  line-height: 30px;
}
/* 質問を開いた時の仕様 */
/* --答えの高さ */
.cp_qa03 .cp_actab input:checked ~ .cp_actab-content {
  max-height: 40em;
  border: 10px solid rgba(145, 88, 156, 0.1);
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa03 .cp_actab input:checked ~ label {
  color:  #e4a7da;
  border-radius: 0.5em 0.5em 0 0;
}
/* 質問をクリックした時の+の動き */
.cp_qa03 .cp_actab input[type=checkbox]:checked + label::after {
  transform: rotateZ(45deg);
  transform-origin: 50% 50%;
}

.okigaru {
  margin: 10% 7%;
  font-weight: bold;
}