/*
 main
*/

* {
	margin:0;
	padding:0;
	border:0;
/*	font-size:100%;*/
	font-size:62.5%;
	font:inherit;
	vertical-align:baseline;
	 box-sizing: border-box;

}


html {
		font-size:62.5%;

}
p {
		font-size:1.6rem;
		color:#545454;
		
}
a {
/*	color: #0066FF;*/
	text-decoration: none;	/*リンクの下線を外す設定*/
}    

a:visited {
/*  	color: #0066FF;	*/		/* 訪問済みリンクの色を未訪問と同じにする */
}    

    body {
		font-family: system-ui, sans-serif;
		line-height: 1.5;
		background: #fff;	/*#fafafa;*/
		max-width: 1100px;
		margin: 0 auto;
		border-left:1px solid #cccccc;
		border-right:1px solid #cccccc;
    }

/*============================================
	fadein
============================================*/
	body {
	    animation: fadeIn 2.4s ease 0s 1 normal;
	    -webkit-animation: fadeIn 2.5s ease 0s 1 normal;
	}
	@keyframes fadeIn {
	    0% {opacity: 0}
	    100% {opacity: 1}
	}
	@-webkit-keyframes fadeIn {
	    0% {opacity: 0}
	    100% {opacity: 1}
	}
/*============================================ */  
    
 h1 { 
	font-size:2.2rem; 
	text-align: center;
	padding:8px;
}

h2 { 
	font-size:2.0rem; 
	text-align: center;
	padding:8px;
}
h3 { 
	font-size:1.8rem; 
	text-align: center;
	padding:8px;
}
h4 { 
	font-size:1.6rem; 
	text-align: center;
	padding:8px;
}   

 header {
      background: #333;
      color: #fff;
      padding: 12px 16px;
      background: #fff;
    }
    
 .BackToMenu{
 	text-align: right;
 }

/*========================================
	角丸シャドウのコンテンツエリア
=========================================*/
.bside_box{
}

.bside{
	text-align:center;
	margin:8px 6px 4px 6px;
/*	margin:0 auto;*/
	padding:0px 0px 0px 0px;
/*	padding:8px 8px 8px 8px;*/
}
.bside h2{
	border-radius: 5px;
	margin: 20px 0 10px;
	padding: 2px 15px;
	font-size: 1.6rem;
	color: #FFF;
	font-weight: bold;
	background: #666;
}

.bside_adjust{	/* ずれ調整 */
	margin:8px 2px 4px 6px;
}

/* ----------------------------------------------------- */
.bside5_box{
}

.bside5{
	font-family:  sans-serif;
	border-radius: 6px;
	box-shadow: 0 0 4px #c0c0c0;
	background-color: #fff;
	border: 1px solid #d3d3d3;  
	text-align: left;
	margin:8px 2px;
	padding:8px 8px 8px 8px;
}

.bside5 h2{
/*	 font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",Osaka,sans-serif;*/
	border-radius: 6px;
	margin: 2px 0px 2px 0px;
	padding: 2px 2px 2px 2px;
	font-size: 1.6rem;
	color: #FFF;
	text-align: center;
	font-weight: bold;
	background: #666;
}

.bside5 h3{
	 font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",Osaka,sans-serif;*/
	margin: 8px 0px 8px 0px;
	padding: 8px 2px 8px 2px;
	font-size: 1.1rem;
	color: #696969;
	text-align: center;
/*	font-weight: bold;
	background: #666;*/
}

.bside5 p{
	padding: 2px 4px 2px 12px;
	font-size: 14px;
	color: #696969;
}

/* ===== ブレークポイント（768px 以下） ===== */
    @media (max-width: 980px) {
	   .bside5_box {
	     	padding:  4px 10px 4px 10px;            	 /* 余白指定 */
   			display: flex;             	 /* フレックスボックスにする */
    		align-items:stretch;       /* 縦の位置指定 */
	   }
	   .bside5{
	   		width:50%;
	   		margin: 2px 4px 2px 4px;
	   	}

	   .bside_box {
	     	padding:  10px;            	 /* 余白指定 */
   			display: flex;             	 /* フレックスボックスにする */
    		align-items:stretch;       /* 縦の位置指定 */
	   }

	   	.bside{
	   		width:50%;
	   		margin: 2px 10px 2px 10px;
	   	}
}

/* ===== ブレークポイント（640px 以下） ===== */
    @media (max-width: 716px) {
	   .bside5_box {
	     	padding:  0px;            	 /* 余白指定 */
	     	display: block;
	   }
	   .bside5{
	   		width:100%;
	   		margin: 10px 10px 10px 10px;
	   	}

	   .bside_box {
	     	padding:  0px;            	 /* 余白指定 */
	     	display: block;
	   }
	   .bside{
	   		width:100%;
	   		margin: 10px 10px 10px 10px;
	   	}	   	
}
        

   
/*============================================
グローバルナビゲーション (トップナビ)
============================================*/

#global_navi {
		width: 100%;
		max-width: 1100px;
		margin: 0 auto;
		padding: 0px;
		background: #000000;
		border-left:1px solid #6e6e6e;
		border-right:1px solid #6e6e6e;
		border-bottom:2px solid #585858;
}

#global_navi ul {
		display:-webkit-box;/*Android4*/
		display:-ms-flexbox;/*IE10*/
		display:-webkit-flex;/*safari(pc,ios8)*/
		display:flex;	 /*flexコンテナに*/
		margin:0;
		padding:0;	 /*自動的にflexコンテナになるけど ulの性質は残ってる*/
}
#global_navi ul li {
		-webkit-box-flex: 1.0; 		/*Android4.3*/
		-ms-flex: 1 0 25%; 	  	/*IE10*/
		-webkit-flex: 1 1 25%;	 	/*PC-Safari,iOS8.4*/
		flex: 1 1 25%;			 /*Flexアイテムを Flexコンテナのスペースいっぱいに膨張させ同じ幅に揃える*/
		margin:0;
		padding:0;
		list-style-type:none;		 /*自動的にflexアイテムになるけど liの性質は残ってる*/
}
#global_navi ul li a {
		display:block;				 /*テキスト以外もリンクとして反応するように*/
/*		font-weight:bold;*/
		font-size:1.4rem;
		line-height:3.2rem; 		/*これで高さを決める*/
		text-align:center; 			/*テキストをセンターに*/
		background-color:#444444;
		color:white;
		border-right:solid #696969 1px;	/*右側だけ白い線*/
		text-decoration:none;
}

#global_navi ul li a:hover {
		background-color:#666666;
}

    /* ===== ナビゲーション ===== */
    .nav-wrapper {
      background: #fff;
      height: 48px;
	padding: 1em;
    }

    nav {
      max-width: 1100px;
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 0 16px;
      position: relative;
      background: #fff;
    }

    .nav-logo {
      color: #fff;
      font-weight: bold;
      padding: 10px 0;
    }

    .nav-menu {
      list-style: none;
      display: flex;
      gap: 16px;
    }

    .nav-menu li a {
      color: #fff;
      text-decoration: none;
      padding: 10px 0;
    }

    .hamburger {
      display: none;
      flex-direction: column;
      gap: 4px;
      width: 28px;
      height: 28px;
      cursor: pointer;
    }

    .hamburger span {
      height: 3px;
      background: #fff;
      border-radius: 2px;
    }

/* ===== メインコンテンツ 2 カラム ===== */
    .container {
      max-width: 1100px;
      margin: 18px auto;
      padding: 0 16px;
      display: flex;
      gap: 20px;
     }

    .main {
      flex: 2;
      background: #fefefe;/*	 background: #f5f5f5;*/
      padding: 20px;
      border-radius: 6px;
      font-size: 1.6rem;
    }

    .sidebar {
      flex: 1;
      background: #f5f5f5;	/*#fff;#e9e9e9; */
      padding: 12px;
      border-radius: 6px;
      max-width:340px;
      font-size: 1.6rem;
    }

    /* ===== フッター ===== */
    footer {
      background: #333;
      color: #fff;
       font-size: 1.4rem;
      text-align: center;
      padding: 12px;
      margin-top: 24px;
      background: #cccccc;
      border-bottom:1px solid #cccccc;
    }

    /* ===== ブレークポイント（768px 以下） ===== */
    @media (max-width: 980px) {
     header {
          border-bottom:1px solid #f5f5f5;
     }
   .nav-wrapper {
            display: none;
            gap: 0px; /* スマホでは10pxに詰める */
     }

      .nav-menu li a {
        padding: 12px 16px;
        border-top: 1px solid rgba(255, 255, 255, 0.1);
      }

      .nav-menu.is-open {
        display: flex;
      }
      
    .sidebar { 
      max-width:100%;
      }
      /* 2 カラム → 1 カラム */
      .container {
        flex-direction: column;
      }
    }
    
 /*============================================
クレジット
============================================*/
.credit{
	padding: 4px;
/*      margin: 0 auto;*/
	background: #fff;
	display: flex;
	justify-content: center;
    }
   
/*============================================
アンダーナビ
============================================*/
#under_navi {
	clear: both;	
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	color: #cccccc;
	font-size : 14px;
	background: #ffffff;
	text-align: center;
	padding-top: 4px;
	padding-bottom: 6px;
        
/*	background: #ffffff;
	text-align: center;
	border-top: 1px solid #808080;
	padding-top: 4px;
	padding-bottom: 4px;
*/

/*	border-left:1px solid #cccccc;
	border-right:1px solid #cccccc;*/
}

#under_navi a{
	display: inline-block;
    color: #03c;
    padding: 0px 4px 2px 4px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#under_navi a:hover {
    color: #00ced1;

}

@media only screen and (max-width: 600px) {

	#under_navi a{
		font-size : 16px;
		padding: 6px;
	}

}
    