@charset "UTF-8";
/*no-float と言いながらHTML5対応で実質floatするcss*/
.wrapper {
  max-width: 1000px;
  margin: 0 auto;
}

.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: 1em;
}
img{
  margin;10px 10px 10px 10px;  
}
.side {
  background: lightcyan;
  width: 25%;
  font-size: 14px;
  letter-spacing: 1pt;
  line-height: 130%;
     }

footer {
    background: #000000;
    color: whitesmoke;
   text-align: center; 
    font-size: 13px;
}

/*  { 
          padding : 0px ; 
          margin : 0px ; 
} */
.background-box{
         width:100%;
         /*background-image: url('img/bcg_03br.gif');*/
       background-color:azure;
}
header {background: #000000;
    color: whitesmoke;
    font-size: 13px;
    padding: 10px 10px 10px 20px;
    text-align: center;
}

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

.a-box {
          border-bottom: 1px solid #00FFFF;
          padding: 10px;
          background-color: skyblue;
      }
.menu-box{
          border-bottom: 1px solid #99CCFF;
    background-color: lightcyan;
          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: #234555; padding-top: 2px; padding-bottom: 2px; text-align: center; font-size:13px;}
.menu a:link {  color: #FFFFFF; font-size:13px;}
.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;
      }


strong { text-decoration: underline; }


.box1{
margin:10px;
padding:1em;
white-space: nowrap;
}
.box2 {
    padding: 1.5em 1.5em;
    margin: 0.5em 0.5em;
    color: black; /*文字色*/
    background: lightcyan;
    border: solid 2px skyblue;/*線*/
    border-radius: 10px;/*角の丸み*/
     font-size: 14px;
}
.box2 p {
    margin: 0; 
    padding: 0;
}
.box3{ display: flex;
    flex-direction: column}

 .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*/

.menu2 {
    max-width: 600px;
    margin: 0 auto;
    padding: 0;
}

.menu2 a {
    display: block;
    padding: 10px;
    text-decoration: none;
    color: #000;
}

/*label {
    display: block;
    margin: 0px 5px 0px 5px;
    padding : 15px;
    line-height: 1;
    color :#fff;
    background : #0068b7;
    cursor :pointer;
}*/
label{
    background: #234555;
    color: #fff;
    display: block;
    margin-bottom: 1px;
    padding: 10px;
    position: relative;
    cursor :pointer;
}
label::before {
    position: absolute;
    content: '▼';
    color: #ffffff;
    right: 0.5em;
    top: 25%;
}

input {
    display: none;
}

.menu2 ul {
    margin: 0;
    padding: 0;'87'
    background :none;
    list-style: none;
}

.menu2 li {
    height: 0;
    overflow: hidden;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}
.menu2 li a:hover{
    color: hotpink;
}
#menu_bar01:checked ~ #links01 li,
#menu_bar02:checked ~ #links02 li,
#menu_bar03:checked ~ #links03 li,
#menu_bar04:checked ~ #links04 li,
#menu_bar05:checked ~ #links05 li,
#menu_bar06:checked ~ #links06 li
{
    height: 50px;
    opacity: 1;
}

/*以下アコーディオンにて右側に開いている時といない時のcheckを入れる機能を考える*/
.acd-check{
    display: none;
}
.acd-label{
    background: #0068b7;
    color: #fff;
    display: block;
    margin-bottom: 1px;
    padding: 10px;
    position: relative;
}
.acd-label:after{
    background: #00479d;
    box-sizing: border-box;
    content: '\f067';
    display: block;
    font-family: "Font Awesome 5 Free";
    height: 52px;
    padding: 10px 20px;
    position: absolute;
    right: 0;
    top: 0px;
}
.acd-content{
    border: 1px solid #333;
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}
.acd-check:checked + .acd-label:after{
    content: '\f068';
}
.acd-check:checked + .acd-label + .acd-content{
    height: 50px;
    opacity: 1;
    padding: 10px;
    visibility: visible;
}


@media (max-width: 600px){
    .container{
        flex-direction: column;
    }
    .container2{
         flex-direction: column;
    }
    .a-box img{width:100%;}
    .side, .main { width: 100%
        }
    .box1
    { width: 100%;
      
    }
    .box3, .boxmain { width: 100%
    }
    .box1{text-align:center;}
 
    
}
/*以下はトップにスクロールするための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;
}
