* {
	margin: 0px; padding: 0px; font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box;
}
img {
	vertical-align: middle;
}
body {
	width: 100%; -webkit-text-size-adjust: 100%;
}

ul {
	list-style: none; 
	margin-bottom: 10px;
 }

#list {
 background-image: url(png/listback.png);
 padding: 3px;
 text-indent: 10px;
 }

#under{
clear: both;
border-top: solid 2px rgb(51, 51, 102);
padding-top: 15px;
padding-bottom: 5px;
text-align: center;
}

.ryokin table {
	border-collapse: collapse;
	border-spacing: 2;
	width: 100%;
 }

.ryokin table p  {
	line-height: 150%;
	padding: 0px;
	margin: 0px;
 }


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

p {
	line-height: 230%;
	margin: 20px 20px 20px 20px;
}

#logo {
}

#logo img {
	width: 210px;
}

.bg-2-div {
	text-align: left;
	margin-bottom: 10px;
}

.sm-nopad {
	padding: 0px;
}

aside {
	width: 85%;
	margin: 0 auto;
}

#sidebar-1 {

}

#sidebar-2 {
	margin-bottom: 10px;
}

#sidebar-3 {
	margin-bottom: 10px;
}

.row {
	text-align: center;
}

.bg-3-div {
	width: 80%;
	margin-bottom: 10px;
}

.max650 {
        display: none;
    }

.table-all {
        border: 0px solid #6090c9;
	width:100%;
}
 
.table-box {
        padding: 10px 14px 10px 16px;
        width: 100%;
        background-color: #6090c9;
        list-style: none;
	color: #ffffff;
	font-weight: bold;
    }

.table-box-s {
        padding: 10px 14px 10px 16px;
        width: 100%;
        background-color: #6090c9;
        list-style: none;
	color: #ffffff;
	font-weight: bold;
    }

.table-box2 {
        padding: 10px 14px 10px 14px;
        border: 1px solid #6090c9;
        width: 100%;
        background-color: #fff;
        list-style: none;
	line-height: 150%;
	margin-bottom: 10px;
    }

.sr-all {
        border: 0px solid #bbb;
	width:100%;
}
 
.sr-box {
        padding: 10px 14px 11px 16px;
	border-top: solid 2px #bbb;
	border-right: solid 2px #bbb;
	border-left: solid 2px #bbb;
	border-bottom: solid 0px #bbb;
        width: 100%;
        background-color: #cfeeff;
        list-style: none;
	color: #003366;
	font-weight: bold;
    }

.sr-box2 {
        padding: 10px 14px 10px 14px;
	border-top: solid 0px #bbb;
	border-right: solid 2px #bbb;
	border-left: solid 2px #bbb;
	border-bottom: solid 2px #bbb;
        width: 100%;
        background-color: #fff;
        list-style: none;
	line-height: 150%;
	margin-bottom: 10px;
    }

.sr-box img {
        width: 70%;
    }


}








@media only screen and (min-width:801px)
{
body {
	margin: 0px auto; padding: 0px 15px; width: 1180px;
    }

}

header {
	width: 100%;
	border-top: solid 7px #30689c;
}
#main {
	margin: 10px 0px; padding: 0px 15px; width: 100%;
}



@media only screen and (min-width:801px)
{
#main {
	width: 820px; margin-left: -15px; float: left;
}

#sidebar-2 {
	display: none;
}

.min801 {
        display: none;
    }

}



@media only screen and (min-width:651px)
{

p {
	font-size: 14pt;
	line-height: 220%;
	margin: 20px 20px 20px 20px;
   }

aside {
	width: 100%;
   }

#sidebar-1 {
	width: 50%; float: left; padding: 0px 10px 0px 10px;
}
#sidebar-2 {
	width: 50%; float: right; display: block;
	padding-right: 10px; margin-bottom: 10px;
   }

#sidebar-3 {
	width: 80%; float: center; display: block;
   }

}



@media only screen and (min-width:801px)
{

p {
	font-size: 13pt;
}

aside {
	width: 345px; float: right;
}

#sidebar-1 {
	width: 345px; padding: 8px 0px 0px 0px;
}
#sidebar-2 {
	width: 345px; display: block;
	padding-right: 0px;
}

#sidebar-3 {
	width: 100%;
	margin-bottom: 10px;
}

}
aside::after {
	clear: both; display: table; content: "";
}

footer {
	background: rgb(0, 85, 187); padding: 15px 20px; width: 100%; clear: both;
}
#logo {
	margin: 2px 0px 0px 7px; width: 150px; float: left; display: block;
}



@media only screen and (min-width:651px)
{
#logo {
	width: 250px;
}
}
#header-top-link {
	margin: 10px 10px 5px; float: right; list-style-type: none; color: #0000a0; font-weight: bold;
}
#header-top-link li {
	margin-left: 10px; display: inline-block;
}
#header-top-link a {
	text-decoration: none; display: block;
}
#header-top-link img {
	height: 30px;
}



@media only screen and (min-width:651px)
{
#header-top-link img {
	height: 35px; padding-right: 5px;
}
}
#header-top-link span {
	display: none;
}



@media only screen and (min-width:651px)
{
#header-top-link span {
	color: rgb(102, 102, 102); font-size: 15px; display: inline;
}
}
#header-top::after {
	clear: both; display: table; content: "";
}
#header-img {
	background-position: bottom; height: 300px; background-image: url("./jpg/top.jpg"); background-size: cover;
}



@media only screen and (min-width:651px)
{
#header-img {
	width: 800px;
}
}




@media only screen and (min-width:801px)
{
#header-img {
	height: 300px;
}
}
#sp-menu {
	background: rgb(0, 85, 187); color: rgb(255, 255, 255); line-height: 45px; padding-left: 15px; font-size: 16px; font-weight: bold; border-bottom: solid 2px #fff;
}



@media only screen and (min-width:651px)
{
#sp-menu {
	display: none;
}
}
#sp-menu img {
	height: 30px; padding-bottom: 4px; margin-right: 8px;
}
nav ul {
	display: none; list-style-type: none;
}



@media only screen and (min-width:651px)
{
nav ul {
	display: block;
}
}

nav li {
	width: 50%; border-bottom-color: rgb(255, 255, 255); border-bottom-width: 2px; border-bottom-style: solid; float: left;
}
nav li:nth-child(2n+1) {
	border-right-color: rgb(255, 255, 255); border-right-width: 2px; border-right-style: solid;
}



@media only screen and (min-width:651px)
{
nav li {
	width: 16.66%; border-right-color: rgb(255, 255, 255); border-bottom-color: currentColor; border-right-width: 2px; border-bottom-width: medium; border-right-style: solid; border-bottom-style: none;
}
nav li:last-child {
	border-right-color: currentColor; border-right-width: medium; border-right-style: none;
}
}
nav a {
	background: rgb(0, 85, 187); color: rgb(255, 255, 255); line-height: 45px; padding-left: 15px; font-size: 13px; font-weight: bold; text-decoration: none; display: block;
}



@media only screen and (min-width:651px)
{
nav a {
	text-align: center; line-height: 36px; padding-left: 0px;
}
}
nav a:hover {
	background: rgb(102, 153, 255);
}
nav ul::after {
	clear: both; display: table; content: "";
}
#main section {
	margin-bottom: 30px;
}

h1 {
margin-bottom: 10px;
padding:9px 0px 7px 0px;
text-indent: 25px;
font-size: 105%;
font-weight:bold;
background: #1e61b5;
border-radius: 7px;
color: #ffffff;
}

h2 {
 padding:10px 0px 8px 0px;
 border-left:solid 14px #4472C4;
 background:#DEEBF7;
 text-indent: 18px;
 font-weight: bold;
 color: #393939;
font-size: 110%
}


h3 {
  margin: 2px 0px 2px 0px;
  padding: 10px 0px 8px 0px;
  width: 100%;
  background-color: #ececec;
  border-radius: 7px;
  font-size: 105%;
  color: #000080;
text-indent: 15px;
}

}



@media only screen and (min-width:651px)
{









}
.main-text {
	text-align: justify; line-height: 1.8; font-size: 15px; max-height: 999999px;
}



@media only screen and (min-width:651px)
{
.main-text {
	font-size: 16px;
}
}
.banner {
	text-align: center; font-size: 14px;
}

aside p {
	line-height: 1.3; font-size: 12px; margin-bottom: 10px;
}
footer ul {
	width: 100%; margin-bottom: 30px; list-style-type: none;
}



@media only screen and (min-width:801px)
{
footer ul {
	width: 300px;
}
}
footer li {
	width: 50%; float: left;
}
footer li a {
	color: rgb(255, 255, 255); line-height: 45px; padding-left: 10px; font-size: 13px; text-decoration: none; display: block;
}



@media only screen and (min-width:801px)
{
footer li a {
	line-height: 24px;
}
}
footer li a:hover {
	background: rgb(102, 153, 255);
}
footer ul::after {
	clear: both; display: table; content: "";
}
#select-layout {
	text-align: right; color: rgb(255, 255, 255); font-size: 13px; margin-bottom: 30px;
}
#PC-site {
	padding: 5px 8px; border: 1px solid rgb(153, 153, 153); border-image: none; display: none;
}
#MO-site {
	padding: 5px 8px; border: 1px solid rgb(153, 153, 153); border-image: none; display: none;
}
#copyright {
	text-align: right; color: rgb(255, 255, 255); font-size: 12px;
}



@media only screen and (min-width:651px)
{
#copyright br {
	display: none;
}
}
.row {
	margin: 10px 0px;
}
.row::after {
	clear: both; display: table; content: "";
}
.sm-1-div {
	padding: 0px 8px; float: left; display: block;
}
.sm-2-div {
	padding: 0px 8px; float: left; display: block;
}
.sm-3-div {
	padding: 0px 8px; float: left; display: block;
}
.sm-4-div {
	padding: 0px 8px; float: left; display: block;
}
.sm-1-div {
	width: 100%;
}
.sm-2-div {
	width: 50%;
}
.sm-3-div {
	width: 33.33%;
}
.sm-4-div {
	width: 25%;
}



@media only screen and (min-width:651px)
{
.bg-1-div {
	width: 100%;
}
.bg-2-div {
	width: 49.55%;
}
.bg-3-div {
	width: 32.45%;
}
.bg-4-div {
	width: 25%;
 }
}

.height-space {
	height: 0px; margin-bottom: 28px;
}





@media only screen and (min-width:651px)
{

.table-all {
        border: 1px solid #6090c9;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    width:100%;
}
 
.table-box {
        padding: 11px 14px 9px 16px;
	border-bottom: solid 2px #ffffff;
        width: 20%;
        background-color: #6090c9;
        list-style: none;
	color: #ffffff;
	font-weight: bold;
    }

.table-box2 {
        padding: 10px 14px 10px 14px;
        border: 1px solid #6090c9;
        width: 80%;
        background-color: #fff;
        list-style: none;
    }

.table-box-s {
        padding: 11px 14px 9px 16px;
        width: 20%;
        background-color: #6090c9;
        list-style: none;
	color: #ffffff;
	font-weight: bold;
    }


.sr-all {
        border: 1px solid #bbb;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    width:100%;
}
 
.sr-box {
        padding: 11px 14px 9px 16px;
	border: solid 1px #bbb;
        width: 40%;
        background-color: #cfeeff;
        list-style: none;
	color: #003366;
	font-weight: bold;
    }

.sr-box2 {
        padding: 10px 14px 10px 14px;
        border: 1px solid #bbb;
        width: 60%;
        background-color: #fff;
        list-style: none;
	line-height: 150%;
    }

.sr-box img {
        width: 100%;
	margin: auto;
    }

}


.one-all {
    border: 1px solid #bbb;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    width:100%;
}

.one-box {
	border: solid 1px #bbb;
        width: 28%;
	position: relative;
    }

.one-box img {
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform : translate(-50%,-50%);
  transform : translate(-50%,-50%);
  height: 70%;
    }

.one-box2 {
        padding: 10px 16px 10px 16px;
        border: 1px solid #bbb;
        width: 72%;
        list-style: none;
	line-height: 150%;
	background-color: #efefef;
    }





.h-all {
        border: 2px solid #aaa;
	width:100%;
}

.h-all img {
        padding: 10px 0px 10px 0px;
}
 
.h-box {
        padding: 10px 14px 11px 16px;
        width: 100%;
        background-color: #fff;
        list-style: none;
	color: #003366;
	font-weight: bold;
	line-height: 175%;
    }

.h-box2 {
        padding: 10px 14px 10px 14px;
        width: 100%;
        background-color: #99ccff;
        list-style: none;
	line-height: 175%;
    }

.h-box3 {
        padding: 10px 14px 10px 14px;
        width: 100%;
        background-color: #ffccff;
        list-style: none;
	line-height: 175%;
    }


.padding-bottom7px {
padding-bottom: 7px;
 }


input[type=text]{
 height: 30px;
 font-size: 16px;
 background-color: #ffffff;
 border-radius: 5px;
 -moz-border-radius: 5px;
 -webkit-border-radius: 5px;
 -webkit-appearance: none;
 }

textarea {
 width: 100%;
 font-size: 16px;
 background-color: #ffffff;
 border-radius: 5px;
 -moz-border-radius: 5px;
 -webkit-border-radius: 5px;
 -webkit-appearance: none;
 }



.map {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.map iframe,
.map object,
.map embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
padding: 5px;
}
