﻿
*{ padding : 0px; margin : 0px;}

body{
  font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic', sans-serif;

}

main{
  display: block;
}


H1{
  /* font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; */
  text-align: center;
  padding-top: 20px;
  color: #000;
}

H3{ 
  padding: 2px 20px;
  border : 0px 0px 3px 8px;
  border-left-style : groove;
  border-bottom-style : groove;
  text-align: left;
  
}

H4{

  margin-left : 50px;
}

P{
  /* font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; */
  font-size: 18px;
  color : #000 ;
  line-height: 1.5;
   
}

figure{
  float: left;
}

figure img {
  max-width: 100%;
}

.float_none {
  clear: both;

}

#head_box{
  width: 800px;
  background-color: #fff;
  text-align: center;

}

#main_box_w{

  width : 800px;
  position: relative;
  background-color: #fff;
  padding: 20px 100px;

}

@media screen and (min-width: 480px) {
  #head_box{
    width: 500px;
    background-color: #fff;
    text-align: center;
  
  }
  
  #main_box_w{
  
    width : 500px;
    position: relative;
    background-color: #fff;
    padding: 10px 50px;
  
  }  
}


.A_box {
  padding-left: 50px;
  padding-right: 100px;
  padding-bottom: 20px;
  list-style-type: none;
}


.mokuji_box1 {
  margin-top: 20px;
}

.mokuji_box2 {

}

/*== ボタン共通設定 */
.btn_1 {
  /*背景の基点とするためrelativeを指定*/
  position: relative;
  width: 100%;
  height: 70px;
  max-width: 500px;
  /*ボタンの形状*/
  display: inline-block;

}

/*ボタン内側の設定*/
.btn_1 span {
  display: block;
  position: absolute;
  width: 100%;
  margin-left: 20px;
  padding: 10px 0px 10px 30px;
  text-align: left;
  
  border: 2px solid #333;
  /* 重なりを3Dで表示 */
  transform-style: preserve-3d;
  /* アニメーションの設定 数字が少なくなるほど早く回転 */
  transition: 0.5s;
}

/*== くるっと回転（奥に） */

/* 回転前 */
.rotateback span:nth-child(1) {
  background: #fff;
  color: #000;
  transform: rotateX(0deg);/*はじめは回転なし*/
  transform-origin: 0 50%  -25px;/* 回転する起点 */
}

/*hoverをした後の形状*/
.rotateback:hover span:nth-child(1) {
  transform: rotateX(90deg);/* X軸に90度回転 */
}

/* 回転後 */
.rotateback span:nth-child(2) {
  background: #000;
  color: #fff;
  transform: rotateX(-90deg);/*はじめはX軸に-90度回転*/
  transform-origin: 0 50%  -25px;/* 回転する起点 */
}

/*hoverをした後の形状*/
.rotateback:hover span:nth-child(2) {
  transform: rotateX(0deg);/* X軸に0度回転 */
}


.tab {
  position: relative;
  margin-bottom: 1px;
  width: 100%;
  color: #fff;
  overflow: hidden;
}
input {
  position: absolute;
  opacity: 0;
  z-index: -1;
}
label {
  position: relative;
  display: block;
  padding: 0 0 0 1em;
  background: #000;
  font-weight: bold;
  line-height: 3;
  cursor: pointer;
  background-color: #bca6f8;
}

.tab-content {
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height .35s;
  -o-transition: max-height .35s;
  transition: max-height .35s;
  color: #000000;
}

.tab-content p {
  margin: 5px 0px 5px 30px;
  font-size: 14px;
}

input:checked ~ .tab-content {
  max-height: 100%;
}

label::after {
  position: absolute;
  right: 0;
  top: 0;
  display: block;
  width: 3em;
  height: 3em;
  line-height: 3;
  text-align: center;
  -webkit-transition: all .35s;
  -o-transition: all .35s;
  transition: all .35s;
}
input[type=checkbox] + label::after {
  content: "+";
}
input[type=radio] + label::after {
  content: "\25BC";
}
input[type=checkbox]:checked + label::after {
  transform: rotate(315deg);
}
input[type=radio]:checked + label::after {
  transform: rotateX(180deg);
}

.timeline {
  width: 96%;
  max-width: 940px;
  margin: 28px auto;
  border: 1px solid #eeeeee;
}

.timeline-list {
  padding: 40px 0;
}

.timeline-list-item {
  display: flex;
  line-height: 1.5;
  font-size: 16px;
}

.timeline-list-item .date {
  width: 20%;
  padding: 0 0 0 20px;
  color: #888888;
  font-weight: bold;
}

.timeline-list-item .content {
  position: relative;
  width: 80%;
  padding: 0 20px 60px 30px;
  border-left: 1px solid #aaaaaa;
}

.timeline-list-item .content::before {
  content: "";
  position: absolute;
  top: 0;
  left: -10px;
  width: 20px;
  height: 20px;
  background-color: #00c2bc;
  border-radius: 10px;
}


.foot_box1{
  clear :both;
  width : 800px;
  text-align: center;
  background-color: #fff;
  padding-bottom: 10px;

}

.foot_box2{
  display: flex;
  width: 800px;
  list-style-type: none;
  background-color: #fff;

}

.foot_box2 li {
  margin: auto;

}

.nabitable{
  display: none
}  

.footer_nabi{
  display: flex;
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  background-color: #fff;
}

.footer_nabi li {
  display: block;
  width: 100%;
  text-align: center;
}


@media screen and (min-width: 480px) {

  .heading-title{
    font-size: 36px;
  }



  .nabitable {
    display: table;
    width: 800px;
    margin-right: auto;
    margin-right: auto;
  
  }

    .nabitable a{
    color: #fff;
  }

  .nabitable > li {
    display: table-cell;

  }

  .nabitable > li > a1 {
    display: block;
    height: 60px;
    line-height: 60px;
    color: black;
    background-color: #fff;
    text-decoration: none;
    text-align: center

  }
  .nabitable > li > a2 {
    display: block;
    height: 60px;
    line-height: 60px;
    border-right: 1px solid #fff;
    color: #fff;
    background-color: #000;
    text-align: center;

  }

  .foot_box2{
    display: flex;
    width: 800px;
    list-style-type: none;
    background-color: #fff;
  
  }

  .foot_box2 li {
    margin: auto;

  }

  .footer_nabi{
    display: none;  

  } 

}



