@charset "UTF-8";
/* CSS Document */


h2{
font-weight: 600;
}
h3{
font-weight: 600;
}
/*------------------
#gensen
------------------*/
#gensen table{
width: 100%;
}
#gensen table tr{
border-bottom: 1px solid #999;
}
#gensen table tr:first-of-type{
border-top: 1px solid #999;
}
#gensen table th{
border-right: 1px solid #999;
border-left: 1px solid #999;
}
#gensen table td{
border-right: 1px solid #999;
}
/*------------------
#access
------------------*/
#access ul{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

/*------------------
#news
------------------*/
#news .box ul li time{
display: block;
padding-bottom: 10px;
}
#news .box ul li {
clear: both;
}
#news .box ul li:first-of-type {
padding-top: 0;
}
#news .box ul li div {
border-top: solid 1px #fff;
}
#news .box ul li:first-of-type div {
padding-top: 0;
}
#news .box ul li:first-of-type div {
border-top: none;
}
#news .box ul li a{
display: block;
text-align: end;
padding-top: 10px;
}
#news .box ul li a:before{
content: "";
display: inline-block;
width: 50px;
height: 1px;
background-color: #fff;
margin: 0 10px 5px 0;
}
/*------------------
#news-p
------------------*/
#news-p .box time{
display: block;
padding-bottom: 10px;
}
/*------------------
#contact
------------------*/
#contact .tel-box{
background: #fff;
border-radius: 6px;
padding: 10px 0 15px;
}
#contact .tel-box h4{
color: #111;
text-align: center;
font-weight: 600;
}
#contact .tel-box a{
display: block;
color: #111;
text-align: center;
font-weight: 600;
}
#contact .tel-box a span{
font-weight: 600;
}
#contact .tel-box p{
color: #111;
text-align: center;
font-weight: 600;
}
#form .soy_inquiry_message{
text-align: center;
}
#form dl{
width: 100%;
margin: 0 auto;
border-bottom: 1px solid #999;
max-width: 800px;
}
#form dl dt{
border-top: 1px solid #999;
letter-spacing: 0.05em;
font-weight: bold;
}
#form dl dt span{
display: inline-block;
text-align: center;
background: #bd2828;
color: #fff !important;
border-radius: 6px;
line-height: 1;
width: 48px;
}
#form dl dd{
box-sizing: border-box;
}
#form dl dd input[type="text"], 
#form dl dd input[type="email"], 
#form dl dd textarea{
box-sizing: border-box;
border: 1px solid #999;
border-radius: 6px;
flex: 1;
background: #fff;
width: 100%;
padding-left: 1em;
padding-right: 1em;
height: 48px;
}
button,
input[type="submit"] {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
padding: 0;
border: none;
outline: none;
background: transparent;
}
#form input[type="submit"] {
display: block;
letter-spacing: 0.05em;
background: #fff;
color: #111;
font-weight: bold;
border-radius: 30px;
margin: 30px auto 0;
padding: 15px 0;
}
@media (max-width: 560px){
.tb-pc{
display: none;
}
.box {
width: 70%;
margin: 0 auto;
}
section{
padding: 15px 0;
}
h2{
font-size: 2.4rem;
padding-bottom: 30px;
}
h2 span{
font-size: 1.3rem;
padding-left: 5px;
}
h3{
font-size: 1.8rem;
padding-bottom: 5px;
}
/*------------------
#about
------------------*/
#about dl{
font-size: 1.4rem;
margin-bottom: 30px;
}
#about dl dt{
background-color: #fff;
color: #111;
padding: 3px 5px;
}
#about dl dd{
padding: 7px 7px 14px 7px;
}
#about .flex .facebook{
width: 250px;
margin: 0 auto 30px;
}
#about p{
font-size: 1.4rem;
line-height: 1.5em;
}
#about .box > p{
padding-bottom: 10px;
}
/*------------------
#gensen
------------------*/
#gensen .box div{
padding-bottom: 30px;
}
#gensen .box div p{
padding-bottom: 20px;
}
#gensen > p{
font-size: 1.4rem;
padding-bottom: 50px;
}
#gensen table{
font-size: 1.4rem;
margin-bottom: 30px;
}
#gensen table th{
display: block;
width: calc(100% - 22px) ;
padding: 5px 10px;
background: #fff;
color: #111;
}
#gensen table td{
display: block;
padding: 10px;
width: calc(100% - 22px) ;
border-left: 1px solid #999;
}

/*------------------
#access
------------------*/
#access p{
line-height: 1.5em;
padding-bottom: 20px;
}
#access img{
padding-bottom: 20px;
}
#access ul li{
}
#access ul li:first-of-type{
width: 100%;
}
#access ul li:nth-child(2),
#access ul li:nth-child(3){
width: 48%;
}
	
	
/*------------------
#news
------------------*/
#news .box ul li time{
font-size: 1.2rem;
}
#news .box ul {
padding-bottom: 40px;
}
#news .box ul li {
padding-top: 40px;
}
#news .box div{
padding-top: 40px;
}
#news .box div img{
padding-bottom: 15px;
}
#news .box div h3{
font-size: 2.0rem;
padding-bottom: 10px;
}
/*------------------
#news-p
------------------*/
#news-p .box time{
font-size: 1.2rem;
}
#news-p .box div img{
padding-bottom: 15px;
}
#news-p .box div h3{
font-size: 2.0rem;
padding-bottom: 10px;
}
/*------------------
#contact
------------------*/
#contact .tel-box{
margin: 0 auto 30px;
}
#contact .tel-box h4{
font-size: 1.8rem;
}
#contact .tel-box a{
font-size: 1.4rem;
}
#contact .tel-box a span{
font-size: 1.8rem;
}
#contact .tel-box p{
font-size: 1.2rem;
}
#form .soy_inquiry_message{
font-size: 1.4rem;
padding-bottom: 10px;
}
#form dl dt{
font-size: 1.4rem;
padding: 10px 0;
}
#form dl dt span{
padding: 7px 0;
font-size: 1.2rem;
margin-left: 10px
}
#form dl dd{
padding: 0 0 15px 0;
font-size: 1.4rem;
}
#form dl dd input[type="text"], 
#form dl dd input[type="email"], 
#form dl dd textarea{
font-size: 1.4rem;
}
#form input[type="submit"]{
width: 200px;
font-size: 1.4rem;
}
}


@media (min-width: 561px){
.sp{
display: none;
}
/*------------------
#about
------------------*/
#about dl{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin-bottom: 100px;
border-top: 1px solid #999;
}
#about dl dt{
padding: 15px;
border-bottom: 1px solid #999;
}
#about dl dd{
padding: 15px 0 15px 20px;
border-bottom: 1px solid #999;
}
/*------------------
#gensen
------------------*/
#gensen .box div{
display: flex;
justify-content: space-between;
align-items: flex-start;
}
#gensen .box div p{
width: 48%;
}
#gensen .box div img{
width: 48%;
}
#gensen > p{
padding-bottom: 50px;
}
#gensen table{
margin-bottom: 30px;
}
#gensen table th{
padding: 10px;
}
#gensen table td{
padding: 10px;
}
/*------------------
#access
------------------*/
#access p{
line-height: 1.8em;
padding-bottom: 20px;
}
#access img{
padding-bottom: 20px;
}
#access ul{
padding-top: 60px;
}
#access ul li:first-of-type{
width: 52%;
}
#access ul li:nth-child(2),
#access ul li:nth-child(3){
width: 22%;
}
	
/*------------------
#news
------------------*/
#news .box ul li time{
font-size: 1.4rem;
}
#news .box ul {
padding-bottom: 70px;
}
#news .box ul li {
padding-top: 70px;
}
#news .box div{
padding-top: 70px;
}
#news .box div img{
width: 50%;
padding: 0 20px 10px 0;
float: left;
}
#news .box div h3{
font-size: 2.4rem;
}
/*------------------
#news-p
------------------*/
#news-p .box time{
font-size: 1.4rem;
}
#news-p .box div img{
width: 50%;
padding: 0 20px 10px 0;
float: left;
}
#news-p .box div h3{
font-size: 2.4rem;
}
/*------------------
#contact
------------------*/
#contact .tel-box{
width: 500px;
margin: 0 auto 50px;
}
#contact .tel-box h4{
font-size: 2.4rem;
}
#contact .tel-box a{
font-size: 1.8rem;
}
#contact .tel-box a span{
font-size: 2.8rem;
}
#contact .tel-box p{
font-size: 1.4rem;
}
#form .soy_inquiry_message{
padding-bottom: 20px;
}
#form dl{
display: flex;
flex-wrap: wrap;
}
#form dl dt{
display: flex;
justify-content: space-between;
align-items: center;
font-size: 1.8rem;
width: 30%;
}
#form dl dt span{
padding: 5px 0;
font-size: 1.4rem;
}
#form dl dd{
padding: 0 0 15px 20px;
width: 70%;
border-top: 1px solid #999;
}
#form dl dd input[type="text"], 
#form dl dd input[type="email"], 
#form dl dd textarea{
font-size: 1.8rem;
margin-top: 15px;
}
#form dl dd textarea{
height: 216px;
}
#form input[type="submit"] {
width: 280px;
font-size: 1.8rem;
}
}


@media (min-width: 561px) and (max-width: 1024px){
.box {
width: 75%;
margin: 0 auto;
}
section{
padding: 50px 0 100px;
}
h2{
font-size: 2.6rem;
padding-bottom: 60px;
}
h2 span{
font-size: 1.4rem;
padding-left: 10px;
}
h3{
font-size: 1.8rem;
padding-bottom: 10px;
}
/*------------------
#about
------------------*/
#about dl{
margin-bottom: 70px;
}
#about dl dt{
width: 150px;
}
#about dl dd{
width: calc(100% - 200px) ;
}
#about .facebook{
width: 400px;
margin: 0 auto 80px;
}
#about .box > p{
padding-bottom: 10px;
}
/*------------------
#gensen
------------------*/
#gensen .box div{
padding-bottom: 30px;
}
#gensen table th{
width: 140px;
}
#gensen table td{
width: calc(100% - 140px) ;
}
}


@media (min-width: 1025px){
.box {
width: 80%;
max-width: 1200px;
margin: 0 auto;
}
section{
padding: 50px 0 100px;
}
h2{
font-size: 3.0rem;
padding-bottom: 60px;
}
h2 span{
font-size: 1.8rem;
padding-left: 10px;
}
h3{
font-size: 2.2rem;
padding-bottom: 10px;
}
/*------------------
#about
------------------*/
#about .flex{
display: flex;
justify-content: space-between;
}
#about .flex dl{
width: calc(94% - 400px) ;
margin-bottom: 100px;
}
#about .flex dl dt{
width: 150px;
}
#about .flex dl dd{
width: calc(100% - 200px) ;
}
#about .flex .facebook{
width: 400px;
}
#about p{
line-height: 1.7em;
letter-spacing: 0.08rem;
}
#about .box > p{
padding-bottom: 20px;
}
/*------------------
#gensen
------------------*/
#gensen .box div{
padding-bottom: 40px;
}
#gensen table th{
width: 200px;
}
#gensen table td{
width: calc(100% - 200px) ;
}

}