#mainbody #title {
background-image: url("image/title.jpg");
}
@media screen and (min-width: 641px),print {
#page {}
#page p.description {
color: #232323;
width: 90%;
margin: 50px auto 50px auto;
text-align: center;
font-size: 20px;
line-height: 1.8em;
font-weight: 500;
}
#page #contents {
text-align: left;
padding-top: 0px;
width: 80%;
margin: 0px auto 20px auto;
}
#contents ul.menu {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#contents ul.menu li {
width: 32%;
margin-bottom: 20px;
}
#contents ul.menu a {
background-color: #ced9ea;
color: #0e307b;
font-size: 20px;
line-height: 1.8em;
font-weight: 700;
display: block;
text-align: center;
padding: 0.4em 0 0.4em 0;
}
#contents ul.menu a:hover {
background-color: #0e307b;
color: #FFF;
}
#contents .list {
width: 60%;
min-width: 1000px;
margin: 50px auto 0 auto;
}
#contents .list h3 {
font-size: 28px;
line-height: 1.8em;
font-weight: 700;
padding: 2em 0 0 0;
}
#contents .list table {
border: solid 1px #b2b2b2;
border-collapse: collapse;
color: #595959;
font-size: 18px;
line-height: 1.8em;
font-weight: 500;
box-sizing: border-box;
margin: 10px 0 0 0;
text-align: left;
}
#contents .list th {
border: solid 1px #b2b2b2;
border-collapse: collapse;
background-color: #f4f4f4;
box-sizing: border-box;
padding: 0.5em 1em 0.5em 1em;
width: 50%;
}
#contents .list td {
border: solid 1px #b2b2b2;
border-collapse: collapse;
box-sizing: border-box;
padding: 0.5em 1em 0.5em 1em;
}

}

@media screen and (min-width: 0px) and (max-width: 640px) {
#contents {}
#detail {
}
#detail .box {
background-color: #FFF;
margin: 50px auto 0 auto;
width: 90%;
box-sizing: border-box;
}
#detail h3 {
font-family: ryo-display-plusn, serif;
font-weight: 600;
font-style: normal;
font-size: 18px;
line-height: 1.4em;
padding: 0 0 1em 0;
text-align: center;
}
#detail p {
font-size: 16px;
line-height: 1.4em;
color: #232323;
}
#overview dl {
text-align: left;
font-size: 16px;
line-height: 1.4em;
color: #595959;
border-bottom: 1px solid #B2B2B2;
margin: 0 0 50px 0;
width: 100%;
}
#overview dt {
width: 100%;
box-sizing: border-box;
background-color: #F4F4F4;
padding: 0.5em 1em 0.4em 1em;
border-top: 1px solid #B2B2B2;
}
#overview dd {
width: 100%;
box-sizing: border-box;
padding: 0.8em 1em 1em 1em;
border-top: 1px solid #B2B2B2;
}
#overview dd p {
margin-bottom: 1em;
}
#overview dd a {
background-color: #919191;
border-radius: 100vh;
display: block;
color: #FFF;
text-align: center;
font-size: 16px;
line-height: 1.4em;
font-family: ryo-gothic-plusn, sans-serif;
font-weight: 700;
font-style: normal;
padding: 0.5em 0 0.5em 0;
position: relative;
}
#overview dd a:after {
content: '';
box-sizing: border-box;
display: inline-block;
position: absolute;
width: 8px;
height: 8px;
border-style: solid;
border-width: 2px 2px 0 0;
border-color: #FFF;
transform: rotate(45deg);
top: 42%;
right: 5%;
}
#overview dd a:hover {
background-color: #000080;
}
#overview dd h5 {
font-size: 14px;
line-height: 1.4em;
margin-bottom: 0.7em;
}
#overview dd h5 b {
font-size: 16px;
line-height: 1.4em;
}
#overview dd h6 {
color: #595959;
font-size: 16px;
line-height: 1.4em;
font-weight: 600;
} 
#overview dd ul {
margin: 0 0 1em 0;
}
#overview dd li {
width: 100%;
margin-bottom: 1.5em;
font-size: 16px;
line-height: 2em;
}

#history {
}
#history dl {
text-align: left;
font-size: 16px;
line-height: 1.4em;
color: #595959;
border-bottom: 1px solid #B2B2B2;
margin: 0 0 100px 0;
width: 100%;
}
#history dt {
width: 100%;
box-sizing: border-box;
padding: 0.5em 0 0.4em 0.5em;
border-top: 1px solid #B2B2B2;
background-color: #F4F4F4;
}
#history dd {
width: 100%;
box-sizing: border-box;
padding: 1em 1em 1em 1em;
border-top: 1px solid #B2B2B2;
}
}
