@charset "utf-8";

/*============================================
リセット
============================================*/
* {
margin:0px;
padding:0px;
}

*, *:before, *:after {
box-sizing:border-box;
}

/*============================================
html
============================================*/
html{
scroll-behavior:smooth;
}

/*============================================
body
============================================*/
body {
line-height:2;
color:#333;
font-size:16px;
font-family:arial, sans-serif; 
}

body img {
vertical-align:bottom;
}

/*============================================
header
============================================*/
header {
display:block;
position:relative;
width:100%;
height:auto;
margin:0px;
border:0px;
padding:0px;
background-color:#202020;
text-align:center;
}

/*=============
ロゴ
==============*/
div#rogo {
z-index:40;
display:block;
position:absolute;
top:0px;
left:45%;
width:auto;
height:60px;
margin:auto;
border:0px;
padding:0px;
line-height:4;
color:#FFF;
}

div#rogo a {
text-decoration:none;
color:#FFF;
}

/*=============
ナビ
==============*/
nav {
z-index:30;
display:block;
position:relative;
width:100%;
height:auto;
margin:0px;
border:0px;
padding:0px;
background-color:#202020;
}

nav label {
display:block;
position:relative;
width:60px;
height:60px;
margin-left:auto;
border:0px;
padding:0px;
background-color:#202020;
cursor:pointer;
}

nav input {
display:none;
}

/*ol 非表示*/
nav ol {
display:block;
position:relative;
width:100%;
height:0px;
margin:0px;
border:0px;
padding:0px;
background-color:#202020;
overflow:hidden;
list-style:none;
transition:0.5s
}

/*ol 表示*/
#menu:checked ~ ol {
display:block;
position:relative;
width:100%;
height:120px;
margin:0px;
border:0px;
padding:0px;
background-color:#202020;
list-style:none;
transition:0.5s;
}

nav ol li a {
display:block;
width:100%;
height:60px;
margin:0px;
border-top:solid 1px #999;
padding:0px;
background-color:#202020;
text-align:center;
line-height:4;
color:#FFF;
text-decoration:none;
}

nav ol li a:hover {
background-color:#2D2D2D;
}

nav ol li a:active {
background-color:#202020;
}

/*============================================
div#gazou
============================================*/
div#gazou {
display:block;
position:relative;
width:100%;
height:auto;
margin:0px;
border:0px;
padding:0px;
}

/*============================================
article
============================================*/
article {
display:block;
position:relative;
width:100%;
height:auto;
margin:0px;
border:0px;
padding:0px;
}

h1 {
display:block;
position:relative;
width:100%;
height:auto;
margin:0px;
border:0px;
padding:20px;
background-color:#CCC;
text-align:center;
font-size:100%;
font-weight:normal;
color:#666;
}

/*--------------------------------------------
セクション
--------------------------------------------*/
section {
display:block;
position:relative;
width:100%;
height:auto;
margin:0px;
border:0px;
padding:80px 5% 60px 5%;
}

section.gray {
background-color:#F2F2F2;
}

h2 {
display:block;
position:relative;
width:100%;
height:auto;
margin:0px;
border:0px;
padding:0px;
text-align:center;
}

/*--------------------------------------------
p
--------------------------------------------*/
p {
display:block;
width:100%;
height:auto;
margin:0px;
border-top:0px;
border-right:solid 1px #999;
border-bottom:0px;
border-left:0px;
padding:10px;
background-color:#F2F2F2;
text-align:left;
font-size:100%;
font-weight:normal;
color:#333;
}

/*--------------------------------------------
親
--------------------------------------------*/
.oya {
display:flex;
position:relative;
width:100%;
height:auto;
margin:0px;
border-top:solid 1px #999;
border-right:solid 1px #999;
border-bottom:0px;
border-left:solid 1px #999;
padding:0px;
background-color:#FFF;
flex-direction:row;/*方向　左から右*/
flex-wrap:wrap;
justify-content:space-between;/*横揃え均等間隔左右なし*/
align-items:stretch;/*縦揃え*/
}

.oya:last-child  {
display:flex;
position:relative;
width:100%;
height:auto;
margin:0px;
border-top:solid 1px #999;
border-right:solid 1px #999;
border-bottom:solid 1px #999;
border-left:solid 1px #999;
padding:0px;
background-color:#FFF;
flex-direction:row;/*方向　左から右*/
flex-wrap:wrap;
justify-content:space-between;/*横揃え均等間隔左右なし*/
align-items:stretch;/*縦揃え*/
}

/*--------------------------------------------
子
--------------------------------------------*/
.ko30 {
display:block;
flex-basis:30%;
height:auto;
margin:0px;
border-top:0px;
border-right:solid 1px #999;
border-bottom:0px;
border-left:0px;
padding:10px;
background-color:#F2F2F2;
text-align:left;
font-size:100%;
font-weight:normal;
color:#333;
}

.ko70 {
display:block;
flex-basis:70%;
height:auto;
margin:0px;
border:0px;
padding:10px;
text-align:left;
font-size:100%;
font-weight:normal;
color:#333;
}

@media screen and (max-width: 959px) {
.ko30 {
display:block;
flex-basis:100%;
height:auto;
border-top:0px;
border-right:0px;
border-bottom:solid 1px #999;
border-left:0px;
padding:10px;
background-color:#F2F2F2;
text-align:center;
font-size:100%;
font-weight:normal;
color:#333;
}

.ko70 {
display:block;
flex-basis:100%;
height:auto;
margin:0px;
border:0px;
padding:10px;
text-align:left;
font-size:100%;
font-weight:normal;
color:#333;
}
}

/*--------------------------------------------
親
--------------------------------------------*/
.oya {
display:flex;
position:relative;
width:100%;
height:auto;
margin:0px;
border-top:solid 1px #999;
border-right:solid 1px #999;
border-bottom:0px;
border-left:solid 1px #999;
padding:0px;
background-color:#FFF;
flex-direction:row;/*方向　左から右*/
flex-wrap:wrap;
justify-content:space-between;/*横揃え均等間隔左右なし*/
align-items:stretch;/*縦揃え*/
}

.oya:last-child  {
display:flex;
position:relative;
width:100%;
height:auto;
margin:0px;
border-top:solid 1px #999;
border-right:solid 1px #999;
border-bottom:solid 1px #999;
border-left:solid 1px #999;
padding:0px;
background-color:#FFF;
flex-direction:row;/*方向　左から右*/
flex-wrap:wrap;
justify-content:space-between;/*横揃え均等間隔左右なし*/
align-items:stretch;/*縦揃え*/
}

/*--------------------------------------------
子
--------------------------------------------*/
.ko30 {
display:block;
flex-basis:30%;
height:auto;
margin:0px;
border-top:0px;
border-right:solid 1px #999;
border-bottom:0px;
border-left:0px;
padding:10px;
background-color:#F2F2F2;
text-align:left;
font-size:100%;
font-weight:normal;
color:#333;
}

.ko70 {
display:block;
flex-basis:70%;
height:auto;
margin:0px;
border:0px;
padding:10px;
text-align:left;
font-size:100%;
font-weight:normal;
color:#333;
}

.ko70　input{
	width: 100%;
}

@media screen and (max-width: 959px) {
.ko30 {
display:block;
flex-basis:100%;
height:auto;
border-top:0px;
border-right:0px;
border-bottom:solid 1px #999;
border-left:0px;
padding:10px;
background-color:#F2F2F2;
text-align:center;
font-size:100%;
font-weight:normal;
color:#333;
}

.ko70 {
display:block;
flex-basis:100%;
height:auto;
margin:0px;
border:0px;
padding:10px;
text-align:left;
font-size:100%;
font-weight:normal;
color:#333;
}
}



/*--------------------------------------------
問い合わせ
--------------------------------------------*/
	
table{
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
	border-collapse:collapse;
}

table th {
	background-color: #E4E4E4;
	width: 30%;
	border: solid 1px #999;
	padding: 10px;
	padding:10px;
	background-color: #E4E4E4;
	text-align:left;
	font-weight:normal;
}

table td {
	background-color: #FFF;
	border: solid 1px #999;
 	padding: 10px;
}

table td input{
	width: 100%;
	height: 30px;
	border: solid 1px #ccc;
}

table td textarea{
	width: 100%;
	border: solid 1px #ccc;
}

input[type="submit"], input[type="reset"] {
	display: inline block;
	width: 120px;
	height: 40px;
}

@media screen and (max-width: 959px) {
table {
    width: 100%;
}

table th,
table td{
	display: block;
	width: auto;
	border-top: none;
}

table tr:first-child th{
	border-top: 1px solid #999;
}
	
input[type="submit"], input[type="reset"] {
	display: block;
	width: 100%;
	height: 40px;
	margin: 10px;
}
}

p.php {
text-align:center;
}


/*============================================
div#pageup
============================================*/
div#pageup{
z-index:20;
position:fixed;
right:5px;
bottom:5px;
width:45px;
height:45px;
margin:0px;
border:0px;
padding:0px;
background-image:url(img/pagetop.png);
opacity:0.6;
}

div#pageup a{
display:block;
position:relative;
width:45px;
height:45px;
margin:0px;
border:0px;
padding:0px;
background-image:url(img/pagetop.png);
opacity:0.6;
text-decoration:none;
}

/*============================================
footer
============================================*/
footer {
z-index:10;
display:block;
position:relative;
width:100%;
height:auto;
margin:0px;
border:0px;
padding:60px 5%;
background-color:#202020;
color:#999;
}

h4 {
display:block;
position:relative;
width:100%;
height:auto;
margin:0px;
border:0px;
padding:0px;
font-size:medium;
}

p.foot {
display:block;
position:relative;
width:100%;
height:auto;
margin:30px 0px;
border:0px;
padding:0px;
}

address{
display:block;
position:relative;
width:100%;
height:auto;
margin:0px;
border:0px;
padding:0px;
}