@charset "utf-8";
#tnav{
  display: none;
}
#index #tnav{
  display: block;
}



/* form */
.wpcf7-form .s_clearbs th p,
.wpcf7-form .s_clearbs td p{
    margin-bottom: 0;
}
[type="tel"]{line-height:1.5em;min-height:2.5em;padding:.5em;font-size:16px;}
.wpcf7-form .t-c p{
    display: flex;
    justify-content: center;
}
.wpcf7-form .t-c p .btn_prev{
    margin-right: 20px;
    background: #695252;
    border: none;
}
@media screen and (max-width:768px) {
  .fi_name [type="text"],.fi_tel [type="tel"],.fi_mail [type="email"]{width:100%;}
}

.post-type-archive-column h1,
.post-type-archive-blog h1{
  display: none;
}

/* p-archive-list */
.p-archive-list{
  margin-bottom: 80px;
}
h3.p-archive-list__title{
  color: #65a8c2;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  padding: 0;
  background: none;
  border-top: none;
}
h3.p-archive-list__title span{
  display: inline-block;  
  padding:10px 16px;
  position: relative;
}
h3.p-archive-list__title span::before{
  position: absolute;
  top: 50%;
  left: -40px;
  content:'';
  width: 40px;
  height: 1px;
  background: #65a8c2;
}
h3.p-archive-list__title span::after{
  position: absolute;
  top: 50%;
  right: -40px;
  content:'';
  width: 40px;
  height: 1px;
  background: #65a8c2;
}
/* archive-list */
.archive-list{
    width: 100%;
}
.archive-list li{    
    border-bottom:#d4d3d3 dotted 1px;
}
.archive-list li a{
  width: 100%;
    display: flex;
    padding: 10px;
    text-decoration: none;
    color: #333;
    transition: 0.3s;
}
.archive-list li a:hover{
  background: #f7fbff;
}
.archive-list li a .thumb{
    width: 30%;
    margin-right: 20px;
}
.archive-list li a img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: 0;
}
.archive-list li a .text{
    width: calc(100% - 30% - 20px);
}
.archive-list li a .date{
  font-size: 14px;
  padding-top: 10px;
  margin-bottom: 5px;
}
.archive-list li a .title{
    font-size:20px;
    font-weight: normal;
    line-height: 1.2;
    background: none;
    border:none;
    padding: 0;
    margin-bottom: 10px;
}   
.archive-list li a .row{
    display: flex;
    justify-content: flex-start;
    gap: 8px;
    margin-bottom: 10px;
}
.archive-list li a .cat {
    display: inline-block;
  padding: 8px;
  font-size: 0.75rem;
  border: 1px solid #005FB2;
  color: #005FB2;
  font-weight: 700;
  line-height: 1;
}
.archive-list li a .exerpt p{
    font-size: 16px;
    margin-bottom: 0;
}
@media screen and (max-width:768px) {
    h3.p-archive-list__title{
      font-size: 18px;
    }
  
    .archive-list li a{
        flex-direction: column;
    }
    .archive-list li a .thumb{
        width: 100%;
        margin-right: 0;
        margin-bottom: 10px;
    }
    .archive-list li a .text{
        width: 100%;
    }
    .archive-list li a .date{
      padding-top: 0;
    }
    .archive-list li a .title{
        font-size:16px;
    }  
    .archive-list li a .exerpt p{
        font-size: 14px;
    }
}

/* p-archive-pickup */
.p-archive-pickup{
  margin-top: 20px;
}
h3.p-archive-pickup__title{
  color: #65a8c2;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  padding: 0;
  background: none;
  border-top: none;
}
h3.p-archive-pickup__title span{
  display: inline-block;  
  padding:10px 16px;
  position: relative;
}
h3.p-archive-pickup__title span::before{
  position: absolute;
  top: 50%;
  left: -40px;
  content:'';
  width: 40px;
  height: 1px;
  background: #65a8c2;
}
h3.p-archive-pickup__title span::after{
  position: absolute;
  top: 50%;
  right: -40px;
  content:'';
  width: 40px;
  height: 1px;
  background: #65a8c2;
}

/* pikup-list */
.pikup-list{
  display: grid;
  grid-template-columns:1fr 1fr 1fr;
  gap: 20px;
  margin-bottom: 80px;
}
.pikup-list a{
  display: block;
  text-decoration: none;
  transition: 0.3s;
}
.pikup-list a:hover{
  opacity: 0.7;
}
.pikup-list li a .thumb{
  width: 100%;
  margin-bottom: 10px;
}
.pikup-list li a img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0;
}
.pikup-list li a .date{
  color: #333;
  font-size: 14px;
  margin-bottom: 5px;
}
.pikup-list li a .title{
  color: #333;
  font-size:20px;
  font-weight: normal;
  line-height: 1.2;
  background: none;
  border:none;
  padding: 0;
} 
.pikup-list li a .row{
  display: flex;
  justify-content: flex-start;
  gap: 8px;
  margin-bottom: 10px;
}
.pikup-list li a .cat {
  display: inline-block;
  padding: 8px;
  font-size: 0.75rem;
  border: 1px solid #005FB2;
  color: #005FB2;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width:768px) {  
  .post-type-archive-column h3.p-archive-pickup__title{
    font-size: 18px;
  }
  .pikup-list{
    grid-template-columns: none;
    grid-template-rows: repeat(3, auto);
    gap: 20px;
    margin-bottom: 40px;
  }
  .pikup-list li a .title{
      font-size:18px;
  }  
}


/* news-list */
.news-list{
  width: 100%;
}
.news-list li{    
  border-bottom:#d4d3d3 dotted 1px;
}
.news-list li a{
  display: block;
  padding: 0.5em 0 0.5em 0.5em;
  text-decoration: none;
  color: #333;
  font-size: 16px;
  transition: 0.3s;
}
.news-list li a .date{
  padding-left: 1em;
  font-size: 16px;
  position: relative;
  margin-bottom: 0;
}
.news-list li a .date::before{
  position: absolute;
  top: 0.5em;
  left: 0;
  content:'';
  width: 7px;
  height: 7px;
  border-top: red solid 2px;
  border-right: red solid 2px;
  transform: rotate(45deg);
}
.news-list li a .title{
  padding-left: 1em;
  font-size: 18px;
  padding-bottom: 0;
  margin-bottom: 0;
  font-weight: normal;
}
.news-list li a:hover .title{
  text-decoration: underline;
}
@media screen and (max-width:768px) {
  .news-list li a .date{
    font-size: 14px;
  }
  .news-list li a .title{
    font-size: 16px;
  }
}

/* wp-paginavi */
.wp-pagenavi {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 3.125vw auto 0;
  }
  @media screen and (max-width: 768px) {
    .wp-pagenavi {
      margin-top: 6.361vw;
    }
  }
  
  .wp-pagenavi a, .wp-pagenavi span {
    display: block;
    text-decoration: none;
    width: 50px;
    height: 50px;
    background: #fff;
    border: #ccc solid 1px;
    border-radius: 5px;
    line-height: 50px;
    text-align: center;
    color: #163263;
    background: #fff;
    font-size: 16px;
    transition: 0.4s;
    padding: 0 !important;
    margin: 0 5px;
  }
  @media screen and (max-width: 768px) {
    .wp-pagenavi a, .wp-pagenavi span {
      width: 6.667vw;
      height: 6.667vw;
      font-size: max(2.133vw, 12px);
      line-height: 6.667vw;
      margin: 0 0.763vw;
    }
  }
  
  .wp-pagenavi a:hover, .wp-pagenavi span.current {
    color: #fff;
    background: #163263;
  }
  
  .wp-pagenavi .pages {
    display: none;
  }


  /* side */
  .popular-articles{
    margin-bottom: 40px;
  }
  #side h3.side-title{
    border-top: none;
    margin-bottom: 0;
  }
  .popular-articles__list li{
    width: 100%;
    border-bottom:#d4d3d3 dotted 1px;
    margin-bottom: 20px;
  }
  .popular-articles__list li a{
    display: block;
    width: 100%;
    text-decoration: none;
    transition: 0.3s;
    padding: 10px 0;
  }
  .popular-articles__list li a:hover{
    opacity: 0.7;
  }
  .popular-articles__list li a .thumb{
    width: 100%;
    margin-bottom: 10px;
  }
  .popular-articles__list li a img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: 0;
  }
  .popular-articles__list li a .date{
    color: #333;
    font-size: 12px;
    margin-bottom: 5px;
  }
  .popular-articles__list li a .title{
    color: #333;
    font-size:18px;
    font-weight: normal;
    line-height: 1.2;
    background: none;
    border:none;
    padding: 0;
  } 
  .popular-articles__list li a .row{
    display: flex;
    justify-content: flex-start;
    gap: 8px;
  }
  .popular-articles__list li a .cat {
    display: inline-block;
    padding: 8px;
    font-size: 0.6rem;
    border: 1px solid #005FB2;
    color: #005FB2;
    font-weight: 700;
    line-height: 1;
  }
  @media screen and (max-width:768px) {  
    
  }
  .side-category{
    margin-bottom: 40px;
  }
  .side-category__list li a{
    color: #333;
    line-height: 1.2;
    width: 100%;
    display: block;
    padding: 15px 10px 15px 30px;
    position: relative;
    transition: 0.3s;
  }
  .side-category__list li a::before {
    position: absolute;
    content: "";
    background: url(../images/design/menu2.png) no-repeat;
    background-size: contain;
    margin: 0 4px 0 -20px;
    width: 16px;
    height: 16px;
    vertical-align: top;
    display: inline-block;
  }
  .side-category__list li a:hover{
    background: #f7fbff;
  }

  /* staffblog */
  .single-blog h1{
    color: #e09d0c;
  }
  .single-blog .p-column-article div#ez-toc-container .ez-toc-title {
    background: linear-gradient(90deg, #e09d0c 0%, #d09108 100%);
    color: #fff;
  }  
  .single-blog .p-column-article div#ez-toc-container .ez-toc-list {
    background-color: #fdf9f0;
    border: 1px solid #e09d0c;
  }
  
  .single-blog .p-editor-content h2::after {
    background: linear-gradient(90deg, #cf8f05 0%, #cf8f05 14%, #f9cf73 14%, #f9cf73 100%);
  }
  
  .single-blog h3{
    background:#fdf9f0;
    border-top:2px solid #e09d0c;
  }
  .single-blog h3.side-title{
    background: url(../images/design/hl.png) 0 bottom repeat-x, url(../images/design/bg_wall.png);
  }
  .single-blog .c-columncat {
    border: 1px solid #e09d0c;
    color: #e09d0c;
  }
  
  .single-blog .p-column__btn {
    color:#e09d0c; 
    border: 1px solid #e09d0c;
  }
  .single-blog .p-column__btn::before {
    border-top: 1px solid #e09d0c;
    border-right: 1px solid #e09d0c;
  }  
.single-blog .popular-articles__list li a .cat {
  border: 1px solid #e09d0c;
  color: #e09d0c;
}  
.post-type-archive-blog h1{
  color: #e09d0c;
}
.post-type-archive-blog .archive-list .cat{
  color: #e09d0c;
  border-color: #e09d0c;
}
.post-type-archive-blog .archive-list li a:hover{
  background: #fdf9f0;
}

.post-type-archive-blog h3.p-archive-pickup__title{
  color: #e09d0c;
}
.post-type-archive-blog h3.p-archive-pickup__title span::before{
  background: #e09d0c;
}
.post-type-archive-blog h3.p-archive-pickup__title span::after{
  background: #e09d0c;
}
.post-type-archive-blog h3.p-archive-list__title{
  color: #e09d0c;
}
.post-type-archive-blog h3.p-archive-list__title span::before{
  background: #e09d0c;
}
.post-type-archive-blog h3.p-archive-list__title span::after{
  background: #e09d0c;
}
.post-type-archive-blog .pikup-list li a .cat {
  border: 1px solid #e09d0c;
  color: #e09d0c;
}
.post-type-archive-blog .popular-articles__list li a .cat {
  border: 1px solid #e09d0c;
  color: #e09d0c;
}
.post-type-archive-blog .side-category__list li a:hover{
  background: #fdf9f0;
}
.tax-blog_category h1{
  color: #e09d0c;
}
.tax-blog_category .archive-list .cat{
  color: #e09d0c;
  border-color: #e09d0c;
}
.tax-blog_category .archive-list li a:hover{
  background: #fdf9f0;
}
.tax-blog_category .popular-articles__list li a .cat {
  border: 1px solid #e09d0c;
  color: #e09d0c;
}


/* home */
#home-column{
  padding: 20px 15px 80px 15px;
}
#home-column h3{
  color: #65a8c2;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  padding: 0;
  background: none;
  border-top: none;
}
@media screen and (max-width:768px) {
  #home-column{
    padding: 40px 10px 40px;
  }
  #home-column h3{
    font-size: 18px;
  }
}
.column-list{
  display: grid;
  grid-template-columns:1fr 1fr 1fr 1fr;
  gap: 20px;
}
.column-list a{
  display: block;
  text-decoration: none;
  transition: 0.3s;
}
.column-list a:hover{
  opacity: 0.7;
}
.column-list li a .thumb{
  width: 100%;
  aspect-ratio: 225 / 150;
  overflow: hidden;
  margin-bottom: 10px;
}
.column-list li a img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0;
}
.column-list li a .date{
  color: #333;
  font-size: 12px;
  margin-bottom: 5px;
}
.column-list li a .title{
  color: #333;
  font-size:16px;
  font-weight: normal;
  line-height: 1.2;
  background: none;
  border:none;
  padding: 0;
}  
.column-list li a .row{
  display: flex;
  justify-content: flex-start;
  gap: 8px;
}
.column-list li a .cat {
  display: inline-block;
  padding: 8px;
  font-size: 0.6rem;
  border: 1px solid #005FB2;
  color: #005FB2;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width:768px) {  
  .column-list{
    grid-template-columns: none;
    grid-template-rows: repeat(4, auto);
    gap: 20px;
  }
}

#home-column > span.more{display:block;text-align:right;padding:12px 2% 0 0;position:relative;overflow:hidden;}
#home-column > span.more a{color:#333;}
#home-column > span.more a{display:inline-block;background:url("../images/design/arrow.png") no-repeat;background-size:16px;padding-left:20px;}

/* singleページ用ボトムバナー */
.single-column__bnr{
  margin: 60px auto 30px;
  width: 100%;
  padding: 5px;
  border-top: #65a8c2 solid 10px;
  border-bottom: #999 solid 2px;
  display: grid;
  grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr;
  grid-template-rows: 40px 60px;
  gap:8px;
  place-content: center;
  justify-content: center;
  align-content: center;
  background: linear-gradient(to bottom, #fff , #fff 20%, #c6c6c6 60%, #c6c6c6 75%);
}
.single-column__bnr .col_text{
  grid-row: 1;
  grid-column: 1/4;
  align-self: center;
  padding-left: 30px;
}
.single-column__bnr .col_text p{
  margin-bottom: 0;
}

.single-column__bnr .col_tel{
  grid-row: 1;
  grid-column: 4/7;
}
.single-column__bnr .col_tel img{
  width: 80%;
}
.single-column__bnr .col_event{
  grid-row: 2;
  grid-column: 1/3;
  background: #4cafd5;
}
.single-column__bnr .col_contact{
  grid-row: 2;
  grid-column: 3/5;
  background: #75a319;
}
.single-column__bnr .col_booklet{
  grid-row: 2;
  grid-column: 5/7;
  background: #df8295;
}
.single-column__bnr .col_text p{
  font-size: 18px;
  font-weight: bold;
}
.single-column__bnr .col_event span.icon,
.single-column__bnr .col_contact span.icon,
.single-column__bnr .col_booklet span.icon{
  display: block;
  width: 60px;
  padding-right: 10px;
}

.single-column__bnr .col_event a span.text,
.single-column__bnr .col_contact a span.text,
.single-column__bnr .col_booklet a span.text{
  display: block;
  font: 16px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  text-decoration: none !important;
}
.single-column__bnr .col_event a,
.single-column__bnr .col_contact a,
.single-column__bnr .col_booklet a{
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  background: transparent;
  transition: 0.3s;
}
.single-column__bnr .col_event a:hover,
.single-column__bnr .col_contact a:hover,
.single-column__bnr .col_booklet a:hover{
  opacity: 0.7;
}
@media screen and (max-width:768px) {
  .single-column__bnr{
    display: grid;
    grid-template-columns:1fr 1fr 1fr;
    grid-template-rows: 20px 30px 60px;
    gap:10px 5px;
    place-content: center;
    margin: 30px auto;
    
    background: linear-gradient(to bottom, #fff , #fff 20%, #c6c6c6 60%, #c6c6c6 75%);
  }
  .single-column__bnr .col_text{
    grid-row: 1;
    grid-column: 1/4;
    align-self: center;
    justify-self: center;
    padding-left: 0;
  }
  .single-column__bnr .col_text p{
    margin-bottom: 0;
  }
  
  .single-column__bnr .col_tel{
    grid-row: 2;
    grid-column: 1/4;
    align-self: center;
    justify-self: center;
    text-align: center;
  }
  .single-column__bnr .col_tel img{
    width: 50%;
    margin: 0 auto;
    align-self: center;
    justify-self: center;
  }
  .single-column__bnr .col_event{
    grid-row: 3;
    grid-column: 1;
  }
  .single-column__bnr .col_contact{
    grid-row: 3;
    grid-column: 2;
  }
  .single-column__bnr .col_booklet{
    grid-row: 3;
    grid-column: 3;
  }
  .single-column__bnr .col_text p{
    font-size: 16px;
  }
  .single-column__bnr .col_event span.icon,
  .single-column__bnr .col_contact span.icon,
  .single-column__bnr .col_booklet span.icon{
    width: 30px;
    padding-right: 0;
    margin-bottom: 5px;
  }
  .single-column__bnr .col_event span.icon img,
  .single-column__bnr .col_contact span.icon img,
  .single-column__bnr .col_booklet span.icon img{
    margin: 0;
  }

  .single-column__bnr .col_event a span.text,
  .single-column__bnr .col_contact a span.text,
  .single-column__bnr .col_booklet a span.text{
    font: 14px;
  }
  .single-column__bnr .col_event a,
  .single-column__bnr .col_contact a,
  .single-column__bnr .col_booklet a{
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }  
}

.tag-list{
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.5em;
}
.tag-list a{
  display: block;
  text-decoration: none;
}

	@media (min-width: 68.5em) {
    #tnav.on {
        right: 50px!important;
    }
