/* -----共通----- */
body {
  font-family: 'メイリオ', Meiryo,'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
  color: #1a1a1a;
  background-color: #f7f1de;
  font-size: 14px;
  -webkit-text-size-adjust: 100%;
}
body a {
  text-decoration: none;
  color: #fff;
}
.inner {
  width: 1250px;
  margin-right: auto;
  margin-left: auto;
}
.page {
  width: 0 auto;
  margin: 0 auto;
  position: relative;
}
.back-top {
  position: fixed;
  bottom: 200px;
  right: 10px;
  display: none;
 }
 .back-top a{
  display: block;
  opacity: 0.5;
  font-weight: bold;
  background-color: #90b44b;
  width: 100px;
  line-height: 100px;
  border-radius: 100%;
  text-align: center;
 }
 .back-top a:hover {
  opacity: 1;
 }

 .breadcrumb {
  background-color: rgba(177, 217, 100, 0.8);
  position: absolute;
  top: 120px;
  width: 100%;
}
.breadcrumb .inner {
  line-height: 30px;
  list-style-type: none;
  display: flex;
}
.breadcrumb li:first-child{
  background-image: url(../images/home.svg);
  background-repeat: no-repeat;
  background-position: 20px 4px;
  padding-left: 20px;
}
.breadcrumb li a {
  display: block;
  width: 30px;
  height: 30px;
}



/* -----header----- */
header {
  background-color: rgba(177, 217, 100, 0.6);
  margin-bottom: 50px;
  position: absolute;
  width: 100%;
  top: 20px;
  z-index: 1;
}
header .inner {
  display: flex;
  justify-content: space-between;
}
header .inner nav ul{
  display: flex;
  justify-content: flex-end;
}
.page .topimg {
  width: 1250px;
}
.page .news {
  background-color: #db4d6d;
  color: #fff;
  font-size: 18px;
  line-height:40px;
  padding-left: 20px;
  margin-bottom: 50px;
}
.contents {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
/* ----main----- */
.home main h2 {
  color: #1a1a1a;
  font-size: 40px;
  padding-left: 549px;
  margin-bottom: 50px;
}
main {
  width: 980px;
  margin-right: 30px;
}

/* -----aside----- */
aside {
  width: 270px;
}
aside ul {
  list-style-type: none;
}
aside ul li {
  margin-bottom: 20px;
}
/* ----pre-aside---- */
.pre-contents aside {
  margin-top: 190px;
}


/* -----footer----- */

footer {
  background-color: #b1d964;
  color: #fff;
  overflow: hidden;
  line-height: 20px;
}
footer .fbox {
  display: flex;
  justify-content: space-between;
}
footer figure {
  text-align: center;
  margin-bottom: 10px;
}
footer .fbox .details {
  width: 320px;
  height: 120px;
  margin: 0 0 40px 0;
}
footer .fbox .nbox {
  width: 120px;
  height: 130px;
  margin-right: 20px;
}
footer .nbox p {
  font-size: 18px;
  color: #db4d6d;
  font-weight: bold;
  margin-bottom: 10px;
}
footer .copy{
  background-color: #90b44b;
  font-size: 10px;
  line-height: 30px;
  text-align: center;
}


/* -----トップページ----- */
.home main .aisatsu {
  color: #fff ;
  display: flex;
  margin-bottom: 40px;
}
.home main .aisatsu figure {
  width: 610px;
  height: 300px;
  margin-right: 20px;
}
.home main .aisatsu .box{
  background-color: rgba(177, 217, 100, 0.8);
  line-height: 18px;
  width: 350px;
  height: 300px;
}
.home main .aisatsu h3{
  font-size: 18px;
  margin: 20px 20px 10px 20px;
  padding-bottom: 15px;
  border-bottom: 1px solid #fff;
 }
 .home main .aisatsu .box p {
  margin: 0px 20px 15px 20px;
}
.home main .aisatsu .box p time {
  font-size: 10px;
}
.home main .events {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}
.home main .events .calender {
  display: flex;
  margin-right: 40px;
  justify-content: space-between;
}
.home main .events .schedule {
  color: #fff;
  background-color: #b1d964;
  width: 80px;
  height: 100px;
  text-align: center;
  margin-right: 20px;
}
.home main .events .schedule .date {
  font-size: 40px;
  padding-top: 20px;
}
.home main .events .schedule .month {
  padding-bottom: 20px;
}
.home main .events .schedule .day {
  font-size: 10px;
  background-color: #db4d6d;
  line-height: 10px;
}
.home main .events .box {
  width: 200px;
  height: 120px;
  line-height: 18px;
}
.home main .events .box time {
  font-size: 10px;
}
.home main .events .box .siyo {
  font-size: 10px;
}





/* -----nenkan---- */
.nenkan article h2 {
  color: #fff;
  font-size: 50px;
  background-image: url(../images/nenkan_img.jpg);
  width: 980px;
  height: 550px;
  padding: 330px 0 180px 20px;
  margin-bottom: 40px;
}
.nenkan article section .para {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}
.nenkan article section .para:last-child {
  margin-bottom: 50px;
}
.nenkan article section .para a {
  display: block;
  width: 300px;
  height: 120px;
  background-repeat: none;
}
.nenkan article section .para .m4 {
  background-image: url(../images/nenkan_4.jpg);
}
.nenkan article section .para .m5 {
  background-image: url(../images/nenkan_5.jpg);
}
.nenkan article section .para .m6 {
  background-image: url(../images/nenkan_6.jpg);
}
.nenkan article section .para .m9 {
  background-image: url(../images/nenkan_9.jpg);
}
.nenkan article section .para .m11 {
  background-image: url(../images/nenkan_11.jpg);
}
.nenkan article section .para .m3 {
  background-image: url(../images/nenkan_3.jpg);
}
.nenkan article section .para p {
  font-size: 20px;
  text-align: center;
  line-height: 30px;
  margin-top: 32px;
}

/* ----gakkohukei----- */
.gakkohukei article h2 {
  color: #fff;
  font-size: 50px;
  background-image: url(../images/hukei_img.jpg);
  width: 980px;
  height: 550px;
  padding: 330px 0 180px 20px;
  margin-bottom: 40px;
}
.gakkohukei article h3 {
  font-size: 18px;
  border-bottom: 3px solid #90b44b;
  margin-bottom: 20px;
  padding-left: 20px;
}
.gakkohukei article .pic {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}
.gakkohukei article .pic:last-child {
  margin-bottom: 50px;
}
.gakkohukei article p {
  line-height: 20px;
  margin-bottom: 37px;
  padding-left: 20px;
}





/* -----contact----- */
.contact main{
  font-size: 18px;
}

.contact article h2 {
  color: #fff;
  font-size: 50px;
  background-image: url(../images/contact_img.jpg);
  width: 980px;
  height: 550px;
  padding: 330px 0 180px 20px;
  margin-bottom: 40px;
}
.contact main a {
  text-decoration: none;
  color: #1a1a1a;
  font-size: 18px;
}
.contact .contact_lead {
  margin-bottom: 40px;
  text-align: center;
}
.contact .contact_telbox {
  width: 570px; 
  height: 140px;
  border: 5px solid #b1d964;
  margin: 0 auto 40px auto;
  display: flex;
}
.contact .contact_telbox th {
  font-weight: normal;
  width: 240px;
  height: 140px;
  text-align: center;
  vertical-align: middle;
}
.contact .contact_telbox .deco {
  width: 10px;
  text-align: center;
}
.contact .contact_telbox td{
  width: 310px;
  height: 140px;
  text-align: center;
  vertical-align: middle;
  line-height: 30px;
}
.contact form {
  padding-left: 20px;
}

.contact .contact_table th {
  width: 270px;
  padding-bottom: 40px;
  font-weight: normal;
}
.contact .contact_table th::after {
  content: "必須";
  color: #fff;
  font-size: 14px;
  background-color: #db4d6d;
  margin-left: 20px;
  padding: 0 10px;
}
.contact .contact_table td {
  padding-bottom: 40px;
}
.contact .contact_table select {
  height: 25px;
  font-size: 18px;
  border: none;
  color: #666;
}
.contact .contact_table .comment_title {
  vertical-align: top;
}
.contact .contact_table input {
  height: 25px;
  font-size: 18px;
  border: none;
}
.contact .contact_table input[type="text"] ,input[type="tel"] {
  width: 200px;
}
.contact .contact_table input[type="email"] {
  width: 300px;
  vertical-align: top;
}
.contact .contact_table .space {
  margin-bottom: 40px;
}
.contact .contact_table textarea {
  font-size: 18px;
  width: 300px;
  height: 140px;
  border: none;
}
.contact .contact_table .method{
  font-size: 18px;
}
.contact button {
  border: none;
  background-color: transparent;
  margin: 0 0 50px 270px;
}

/* -----access----- */

.access article h2 {
  color: #fff;
  font-size: 50px;
  background-image: url(../images/access_img.jpg);
  width: 980px;
  height: 550px;
  padding: 330px 0 180px 20px;
  margin-bottom: 40px;
}
.access article h3 {
  font-size: 18px;
  border-bottom: 3px solid #90b44b;
  margin-bottom: 20px;
  padding-left: 20px;
}
.access article p {
  line-height: 20px;
  margin-bottom: 37px;
  padding-left: 20px;
}
.access article .access_car {
  margin-bottom: 10px;
}
.access article .access_car:last-child { 
  margin-bottom: 40px;
}
.access article .map {
  width: 980px;
  margin: 0 auto 40px auto;
}
.access article .google {
  width: 980px;
  height: 50px;
  display: flex;
  margin-bottom: 50px;
}
.access article .link {
  margin: 0 40px 0 170px;
}
.access article .google address {
  line-height: 18px;
}
.access article .google address a{
  text-decoration: none;
  color:#1a1a1a;
}