@charset "UTF-8";
/*no-float と言いながらHTML5対応で実質floatするcss*/
.wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
header {
  background: tomato;
}
.blackandsmall{
    color:black;
    font-size:3px;
}
.container {
  display: flex;
}
.container2 {
  display: flex;
}


.main {
  background: white;
  width: 75%;
  font-size: 15px;
  letter-spacing: 1pt;
  line-height: 150%;
　padding: 10px;
}
img{
  margin;10px 10px 10px 10px;  
}
.side {
  background: lightcyan;
  width: 25%;
  font-size: 14px;
  letter-spacing: 1pt;
  line-height: 130%;
     }

footer {
  background: skyblue;
   text-align: center; 
}

/*  { 
          padding : 0px ; 
          margin : 0px ; 
} */
.background-box{
         width:100%;
         /*background-image: url('img/bcg_03br.gif');*/
       background-color:azure;
}

.site-box {
          max-width: 1000px;
          /*border: 1px solid #00FFFF;*/
          margin : 0 auto;
 
}

.a-box {
          border-bottom: 1px solid #00FFFF;
          padding: 20px;
          background-color: skyblue;
      }
.menu-box{
          border-bottom: 1px solid #99CCFF;
          background-color: skyblue;
          padding: 0px;
          font-size: 14px;
          }
#a-box{
    background-color: skyblue;
}
#b-box{
    background-color: aliceblue;
    
}
#menu-box{          background-color: skyblue;
}
#d-box{
    background-color: skyblue;
    text-align: center;
}

h1 {
  margin-left: 5px;
  position: relative;
  padding: 0.25em 0;
}
h1:after {
  content: "";
  display: block;
  height: 4px;
  background: -webkit-linear-gradient(to right, rgb(230, 90, 90), transparent);
  background: linear-gradient(to right, rgb(230, 90, 90), transparent);
}

h2 {
  position: relative;
  display: inline-block;
  padding: 0 55px;
 margin: 10px 0 15px 0;
}

h2:before, h2:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 2px;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
}

h2:before {
  left:0;
}
h2:after {
  right: 0;
}

h3 {
          font-size: 18px;
          margin: 5px;
    letter-spacing: 1pt;
}
.main h3{
       /*線の種類（実線） 太さ 色*/
  border-bottom: solid 3px black;
}
.main h4{
          font-size: 17px;
          margin: 10px;
    letter-spacing: 1pt;

}

p {
          font-size: 15px;
          margin: 15px;
       letter-spacing: 1pt;
       line-height: 150%;
}

ul { 
          padding : 5px 5px 10px 10px; 
}  
.side ul{  
    list-style: none; 
}
.category {
          font-size: 14px;
          color: #FFFFFF;
          background-color: #3399FF;
          padding: 5px;
          margin: 5px;
}
.menu {  color: #FFFFFF; background-color: #0000FF; padding-top: 2px; padding-bottom: 2px; text-align: center}
.menu a:link {  color: #FFFFFF}
.menu a:visited {  color: #FFFFFF}
.menu a:hover {  color: #FFFF00}
.menu a:active {  color: #FFFFFF}
    li
      {
         margin-top: 0.5em;
      }
       *.float
      {
         float: left;
         margin-right: 1em;
      }
      *.floatclear
      {
         clear: both;
      }
  *.floating
{
   float: left;
   width: 43%;
   border: solid 0px #cccccc;
}
     *.floatingclear
      {
         clear: both;
      }


strong { text-decoration: underline; }

 *.clear_l{
	clear: left;
}
 *.clear_r{
	clear: right;
} 
.box1{
 margin:10px;
white-space: nowrap;
}
.box2 {
    padding: 1.5em 1.5em;
    margin: 0.5em 0.5em;
    color: black; /*文字色*/
    background: #FFF;
    border: solid 2px skyblue;/*線*/
    border-radius: 10px;/*角の丸み*/
     font-size: 14px;
}
.box2 p {
    margin: 0; 
    padding: 0;
}
.box3{ flex-direction: row}

 div.shadowbox
{
    border-style: solid;
    border-width: 1px 2px 2px 1px;
    border-color: #c0c0c0 #808080 #808080 #c0c0c0;
    padding: 1.5em;
    margin-left: 0.5em ;
    margin-right: 0.5em;
    font-size: 11pt;
    letter-spacing: 1pt;
    line-height: 130%;　　
}  
/*以下はトップにスクロールするためのCSS*/


#page_top{
  width: 90px;
  height: 90px;
  position: fixed;
  right: 0;
  bottom: 0;
  opacity: 0.6;
}
#page_top a{
  position: relative;
  display: block;
  width: 90px;
  height: 90px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #3f98ef;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -40px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'PAGE TOP';
  font-size: 13px;
  color: #fff;
  position: absolute;
  top: 45px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
  color: #3f98ef;
}

*全体*/
.hidden_box {
    margin: 2em 0em　;/*前後の余白*/
    padding: 0;
}

/*ボタン装飾*/
.hidden_box label {
    padding:1px;
    font-weight: bold;
    color:#6e5064;
    border: solid 1px #6e5064;
    cursor :pointer;
    margin-left: 2em;
    margin-top: 3px;
}

/*ボタンホバー時*/
.hidden_box label:hover {
    background: #efefef;
}

/*チェックは見えなくする*/
.hidden_box input {
    display: none;
}

/*中身を非表示にしておく*/
.hidden_box .hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}

/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
    padding: 10px 0;
    height: auto;
    opacity: 1;
}

