@charset "UTF-8";

/*---------------------
    基本設定
--------------------*/
* {
  margin: 0px;
  padding: 0px;
  border: 0px solid #FFFFFF;
}
body,div,pre,p,blockquote,
form,fieldset,input,textarea,select,option,
dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
table,th,td,embed,object {
  margin: 0;
  padding: 0;
}
h1,h2,h3,h4,h5,h6 {
  font-style: normal;
  font-weight: normal;
  font-size: 1.0em;
}
html {
  min-width: 320px;
  font-size: 62.5%;   /* 10px  */
}
hr{
  border-width: 1px 0px 0px 0px;
  border-style: solid;
  border-color: #cccccc;
  margin-bottom: 0.2rem;
  margin-top: 0.2rem;
}
.a {
  margin-bottom:0.2rem; 
}
.b {
  margin-bottom:0.4rem;
}
body {
  background: #FFFFFF;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", 
               "ＭＳ Ｐゴシック", "sans-serif";
}
h1 {
  color: #336699;
  font-size: 36px;
  font-size: 2.25rem;
}
h2 {
  color: #336699;
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: normal;
}
h3 {
  color: #336699;
  font-size: 11px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1.5;
}
h4 {
  color: #336699;
  font-size: 10px;
  font-size: 1.4rem;
  font-weight: normal;
}
h5 {
  color: #003366;
  font-size: 10px;
  font-size: 1.2rem;
  font-weight: normal;
}
h6 {
  color: #003366;
  font-size: 8px;
  font-size: 0.9rem;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
#container {
width: 870px;
max-width: 100%;
margin-top: 10px;
margin-left: auto;
margin-right: auto;
margin-bottom: 10px;
padding: 0px;
}

/* basic layout */

#header {
width: 870px;
max-width: 100%;
margin: 0px 0px 0px 0px;
padding: 0px 0px 0px 0px;
}
#contents {
width: 870px;
max-width: 100%;
margin: 0px 0px 0px 0px;
padding: 0px 0px 0px 0px;
}
#footer {
background: #797979;
width: 870px;
max-width: 100%;
float: none;
margin: 20px 0px 0px 0px;
padding: 5px 0px 5px 0px;
color: #ffffff;
font-size: 10px;
font-size: 1.2rem;
font-weight: normal;
text-align: center;
}

/* contents layout */

header {
	/* overflow: hidden; */
}
.top{
text-align: center;
padding: 0px 5px 20px 5px;
}
#top-grid {
width: 100%;
max-width: 100%;
margin: 0px 0px 0px 0px;
padding: 30px 10px 0px 10px;
line-height: 1.5;
}
.top p{
 color: #003366;
 font-size: 10px;
 font-size: 1.2rem;
 font-weight: normal;
 float: right; 
}
.top ul{
 float: left; 
}
.main-box-right {
margin: 5px 5px 5px 0px;
float: right;
}
.main-box-left {
margin: 2px 0px 5px 5px;
float: left;
}
#main {
width: 100%;
max-width: 100%;
margin: 0px 0px 40px 0px;
padding: 0px 0px 0px 0px;
line-height: 1.5;
}
.main-txt {
margin: 0px 0px 0px 0px;
padding: 5px 5px 5px 5px;
}
.cssgrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  margin: 0px 0px 0px 0px;
  padding: 0px 10px 0px 10px;
}
.cssgrid > div {
  overflow: auto;
  padding: 15px 40px 15px 0px;
}
.maindesign {
width: 100%;
max-width: 100%;
margin: 0 0 0 0;
padding: 0 0 0 0;
line-height: 1.5;
font-size: 12px;
color: #333333;
}
.mainbuttan {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
list-style: none;
background-image:none;
}
img{
margin-bottom: 2px;
}
.mainbottom {
 color: #003366;
 font-size: 10px;
 font-size: 1.2rem;
 font-weight: normal;
 float: right; 
 padding: 5px 10px 0px 0px;
}

/*-----------------------
    415px以下のスマフォ - 設定
------------------------*/


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

#container {
width: 400px;
max-width: 100%;
height: auto;
}
#header {
width: 400px;
max-width: 100%;
height: auto;
	}
#contents {
width: 400px;
max-width: 100%;
height: auto;
}
#main {
width: 400px;
max-width: 100%;
height: auto;
}
#footer {
width: 400px;
max-width: 100%;
height: auto;
}
	}