@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}

/*ヘッダー オビ*/
.logo-image{
text-align: left;
padding: 0;
}
/*834px以下*/
@media screen and (max-width: 834px){
.header-site-logo-image {
	transition:0.5s;
}
}
@media screen and (min-width: 980px) {
	.header-site-logo-image:hover {
		opacity:0.8;
	}
}
.site-name-text {
  margin: 0 16px 0 0;
  display: block;
}

.header_kensaku{
position: absolute;
top:25px;
right: 0;
min-width: 500px;
width: 50%;
display: flex;
align-items: center; /* 子要素を上下中央に揃える */
justify-content: right;
line-height: 0;
padding: 0 15px 0 0;
}
.header_kensaku p{
margin: 0 7px;
font-size: 1.0em;
font-weight: 700;
letter-spacing: 1px;
}
.header_kensaku form{
display: inline-block;
width: 250px;
margin: 0;
}
.header_kensaku .search-edit, .header_kensaku  .search-box input[type="text"] {
	color: #4d4435;
	border-radius: 10px;
	outline: none;
	padding: 6px 6px 6px 12px;
  font-size: 14px;
}
.header_kensaku .search-submit[type=submit] {
	top: 0;
	right: 0;
	height: 100%;
	padding: 8px 15px;
	background: #4d4435; 
	color: #fff; 
	font-size: 16px;
	font-weight: bold;
  border-left: 1px #4d4435 solid;
	border-radius: 0 10px 10px 0;
	transition:0.3s;
}
.header_kensaku p a{
color: #fff;
text-decoration: none;
transition:0.3s;
}
.header_kensaku p a:hover{
color: #ffd555;
}
.header_kensaku p img{
width: 30px;
}
@media screen and (min-width: 980px) {
	.header_kensaku .search-submit[type=submit]:hover {

	}
}
@media screen and (max-width: 834px){
.header_kensaku{display: none!important;}
}

#navi .navi-in{
margin: 0;
width: 100%;
}
#navi .navi-in ul{
width: 100%;
display: flex;
box-shadow: 0px 5px 7px 0px rgba(0, 0, 0, 0.15);
}
#navi .navi-in li{
flex-grow: 1;
border-right: 2px solid #403937;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
height: 52px;
line-height: 56px;
}
#navi .navi-in li:last-of-type{
border-right: none;
}
#navi .navi-in a{
	padding: 0 2.0em;
}
#navi .navi-in li a:after{
	position: absolute;
	content: "";
	left: 0px;
	top: 0;
	height: 7px;
	width: 100%;
}
#navi .navi-in li:nth-of-type(1) a:after{
	background: #6fc9d6;
}
#navi .navi-in li:nth-of-type(2) a:after{
	background: #7ec990;
}
#navi .navi-in li:nth-of-type(3) a:after{
	background: #f9c762;
}
#navi .navi-in li:nth-of-type(4) a:after{
	background: #ea99a3;
}
#navi .navi-in li:nth-of-type(5) a:after{
	background: #b7d368;
}
#navi .navi-in li:nth-of-type(6) a:after{
	background: #96B5D5;
}
#navi .navi-in > .menu-header .item-label{
	font-size: 16px;
  font-weight: 600;
  letter-spacing: 1px;
}
.menu-button-in img{
margin: 0;
}

@media screen and (max-width: 834px){
#navi .navi-in > .menu-header .item-label{font-size: 12px;letter-spacing: 0;
}
#navi .navi-in li{width: 32%;height: 42px;line-height: 50px;}
}

/* モバイルフッターメニューの文字色・背景色を変更 */
.mobile-menu-buttons {
	transition: all 0.5s ease;
  }
/* オンカーソル時の設定 */
.menu-button:hover { 
  }
.mobile-menu-buttons .menu-caption {
    display: none;
}
/* ニュース一覧の日付表示 */
.new-entry-card-date {
  display: block;
}

#footer_morse{
background: #fffced;
padding: 15px;
color: #323232;
font-size: 12px;
}
#footer_morse img{
width: 100%;
}
#footer_morse ul{
list-style: none;
display: flex;
align-items: center;
justify-content: left;
}
#footer_morse li{
margin-right: 15px;
text-align: left;
}
#footer_morse .box01 li:nth-of-type(1){
width: 220px;
}
#footer_morse .box01 li:nth-of-type(2){
padding: 5px 10px;
border: 1px solid #323232;
}
#footer_morse .box01 li:nth-of-type(3){
line-height: 1.3;
}
#footer_morse .box01 li:nth-of-type(4){
margin-left: auto;
}
#footer_morse .box01 li:nth-of-type(4) a{
padding: 10px 15px;
background: #323232;
border-radius: 30px;
color: #fff;
font-weight: 700;
text-decoration: none;
transition : 1s;
}
#footer_morse .box01 li:nth-of-type(4) a:hover{
background: #ffd255;
}
#footer_morse .box02 li:nth-of-type(1) a{
padding: 0 15px 0 0;
border-right: 1px solid #323232;
margin: 0 15px 0 0;
color: #323232;
font-weight: 700;
letter-spacing: 2px;
font-size: 14px;
text-decoration: none;
transition : 0.5s;
}
#footer_morse .box02 li:nth-of-type(1) a:last-of-type{
border-right: none;
padding: 0;
}
#footer_morse .box02 li:nth-of-type(1) a:hover{
color: #aaa;
}
#footer_morse .box02 li:nth-of-type(2) a{
width: 30px;
display: inline-block;
}
#footer_morse .box02 li:nth-of-type(3){
margin-left: auto;
}
#footer_morse .box02 li:nth-of-type(3) .search-edit{
border-radius: 30px;
width: 200px;
}
#footer_morse .box03{
border-bottom: 1px solid #323232;
padding-bottom: 15px;
}
#footer_morse .box03 li a{
margin: 5px 20px 0 0;
color: #323232;
font-weight: 700;
letter-spacing: 2px;
font-size: 14px;
text-decoration: none;
transition : 0.5s;
}
#footer_morse .box03 li a:hover{
color: #aaa;
}
#footer_morse p{
margin: 10px 10px 0;
width: 100%;
text-align: center;
}
@media screen and (max-width: 768px){
#footer_morse{
font-size: 11px;
}
#footer_morse ul{
display: block;
box-sizing: border-box;
padding: 15px;
}
#footer_morse li{
margin: 0 0 5px;
text-align: center;
width: 100%;
}
#footer_morse .box01 li:nth-of-type(1){
max-width: 300px;
margin: auto;
}
#footer_morse .box01 li:nth-of-type(2){
padding: 3px 10px;
display: inline-block;
width: auto;
margin: 0 auto 5px;
}
#footer_morse .box01 li:nth-of-type(4){
margin: 20px auto 30px;
}
#footer_morse .box01 li:nth-of-type(4) a{
padding: 5px 15px;
}
#footer_morse .box02 li:nth-of-type(1) a{
padding: 0 10px 0 0;
margin: 0 10px 0 0;
letter-spacing: 1px;
font-size: 13px;
}
#footer_morse .box03 li a{
margin: 5px 10px 0 0;
white-space: nowrap;
font-size: 12px;
}
#footer_morse .box03 li a:hover{
color: #aaa;
}
#footer_morse p{
margin: 10px 10px 0;
width: 100%;
text-align: center;
}
}
/* ホームボタンの色 */
.mobile-menu-buttons .menu-button .menu-icon {
color: #6fc6d3!important;
}
/*固定ページの設定*/
.page .date-tags,
.page .author-info,
.page .breadcrumb-home
{
display: none;
}


/************************************
** トップページ
************************************/
#top {/*bodyID*/
background: #fff;
}
#top a{
color: #000;
text-decoration: none;
transition: transform 0.3s ease;
}
#top a:hover{
transform: translateY(-3px);
}
#top ul,#top li{list-style: none;padding: 0;}
#top-00{display: none;}/*スマホ用新着*/
#top-01{
background: linear-gradient(to right, #fff6bb 50%, white 50%);
padding: 50px calc((100% - 1150px)/2) 0;
}
#top-01 > ul{
width: 100%;
}
#top-01 > ul > li{
display: inline-block;
position: relative;
vertical-align: bottom;
}
#top-01 > ul > li:nth-of-type(1){
background: #fff;
border-radius: 50px 50px 0 0;
padding: 30px 30px 15px;
width: 32%;
height: auto;
}
#top-01 .box01{
position: relative;
text-align: center;
}
#top-01 .box01 img{
width: 90%;
display: block;
margin: 0 auto;
} 
#top-01 .box01 a{
display: block;
position: absolute;
top:60px;
right: -5%;
width: 70px;
z-index: 1;
} 
#top-01 .box01 a.pr{
display: inline;
position: relative;
top:0;
right: 0;
width: auto;
} 
#top-01 .box01 p{
font-size: 14px;
line-height: 140%;
margin-top: 5px;
}
#top-01 .box02{
margin-top: 15px;
}
#top-01 .box02 .day{
font-family: "Glory", sans-serif;
font-weight: 900;
font-size: 65px;
line-height: 100%;
text-align: center;
}
#top-01 .box02 .day span{
font-size: 40%;
}
#top-01 .box02 .weather{
}
#top-01 .box02 table{
width: auto;
margin: auto;
}
#top-01 .box02 tr{
padding: 0;
}
#top-01 .box02 th,#top-01 .box02 td{
background: #fff;
border: none;
padding: 0;
font-size: 17px;
font-weight: 700;
}
#top-01 .box02 td{
padding-left: 10px;
}
#top-01 .box02 td img{
width: 45px;
}
#top-01 .box02 td:nth-of-type(2){
text-align: right;
}
#top-01 h3{
margin: 20px 0 0;
padding: 15px 0 10px 0;
border-bottom: 1.5px solid #3c3c3c;
background: url("img/t01-01.png") no-repeat top center;
font-size: 22px;
letter-spacing: 1px;
}
#top-01 .box03 h3{
background-position: top left 5.5em;
}
#top-01 .box03 ul{
padding-left: 1em;
margin-top: 10px;
}
#top-01 .box03 ul li{
list-style: disc;
font-size: 12px;
font-weight: 600;
}
#top-01 .box03 ul li a{
display: block;
text-decoration: underline!important;
}
#top-01 .box03 ul li a:hover{
transform: translateY(-2px);
}
#top-01 .box04 {/*イベント3件*/
}
#top-01 .box04 h3{
background-position: top left 8em;
}
#top-01 .box04 .ect-minimal-list-wrapper{
margin: 0;
}
#top-01 .box04 .ect-simple-event{
padding: 10px 0;
margin: 0;
border: none!important;
border-bottom: 1px solid #b4b4b4!important;
}
#top-01 .box04 .ect-event-date-tag{
width: 15%;
}
#top-01 .box04 .ect-event-datetimes{
padding: 0 0 0 0;
}
#top-01 .box04 .ect-event-details{
padding: 0 0 0 10px;
border-left: 5px solid #f8f6d1!important;
width: 100%;
}
#top-01 .box04 .ect-events-title{
margin: auto;
padding-right: 10px;
font-weight: 900!important;
line-height: 100%;
}
#top-01 .box04 .ect-event-datetimes{
margin-top: 5px;
}
#top-01 .box04 p a{
display: block;
font-size: 14px;
margin-top: 5px;
text-align: right;
}
/*広告枠（入れる時は下のbox05margin10に）
#top-01 .box05-00{
margin-top: 50px;
margin-bottom: 20px;
margin-left: auto;
margin-right: auto;
max-width: 310px;
text-align: center;
}
#top-01 .box05-00 a{
padding-top: 100px;
}*/
#top-01 .box05 a{
display: block;
max-width: 250px;
margin: 160px auto 0;
}
#top-01 > ul > li:nth-of-type(2){
padding: 30px 50px;
width: 67%;
background: #fff6bb;
border-radius: 50px;
}
#top-01 > ul > li:nth-of-type(2) h2{
position: absolute;
max-width: 610px;
top:-130px;
left: 50px;
}
/* 流れるテキスト */
.marquee-container {
width: 100%;
overflow: hidden;
white-space: nowrap;
background-color: #fff;
border-radius: 30px;
padding: 8px 0; /* 上下の余白 */
position: relative;
}
.marquee {
display: inline-block;
white-space: nowrap;
animation: marquee-loop 15s linear infinite;
}
.marquee a {
text-decoration: none;
color: #007bff;
font-size: 14px;
margin: 0 20px; /* テキスト間のスペース */
transition: color 0.3s ease;
background: url("img/chumoku_icon.png") no-repeat center left / 12px auto;
padding-left: 20px;
}
#top-01 .box06 ul{
padding: 10px 10px 10px 188px;
border: 1px solid #3c3c3c;
background: #fff;
margin-top: 15px;
position: relative;
}
#top-01 .box06 li{
border-left: 1px solid #c8c8c8;
padding: 0 0 0 8px;
display: flex;
align-items: center;
font-size: 12px;
min-height: 50px;
vertical-align: middle;
}
#top-01 .box06 img{
width: 170px;
position: absolute;
top:-5px;
left: 8px;
}
#top-01 .box07{
margin-top: 15px;
}
#top-01 .box07 a{
display: block;
}
#top-01 .box07 .recent-posts {
display: flex;
flex-wrap: wrap;
gap: 15px 20px;
}
#top-01 .box07 .post-item {
background: #fff;
width: calc(50% - 10px);
border-left: 5px solid #000;
padding: 0 10px 0;
box-sizing: border-box;
}
#top-01 .box07 .post-thumbnail img {
width: 130px;
height: auto!important;
display: block;
float: right;
top:10px;
right:10px;
margin-left: 5px;
}
#top-01 .box07 .post-date,
#top-01 .box07 .post-category,
#top-01 .box07 .post-title,
#top-01 .box07 .post-thumbnail {
margin-bottom: 10px;
}
#top-01 .box07 .post-date{
font-size: 15px;
font-weight: 600;
line-height: 0.8em;
}
#top-01 .box07 .post-date .chumoku_title{
display: inline-block;
padding: 5px 5px 6px;
background-color: #66b188;
color: #fff;
font-weight: 500;
font-size: 13px;
}
#top-01 .box07 .post-category span{
background: #d2d2d2;
padding: 5px 8px;
border-radius: 10px;
font-size: 10px;
line-height: 0.8em;
height: calc(10px + 1em);
display: inline-block;
margin: 0;
}
#top-01 .box07 .post-title{
font-size: 12px;
line-height: 1.3em;
}
#top-01 .button{
display: block;
background: #3c3c3c;
padding: 15px 5px;
text-align: center;
color: #fff;
margin: 15px 0 0;
font-size: 13px;
font-weight: 600;
letter-spacing: 1px;
line-height: 100%;
}
@media screen and (max-width: 1100px){
#top-01{
background: linear-gradient(to bottom, #fff6bb 80%, white 50%);
padding: 30px;
}
#top-01 > ul > li{
display: block;
}
#top-01 > ul > li:nth-of-type(1){
border-radius: 30px;
padding: 30px;
width: 100%;
display: flex;
flex-wrap: wrap;
}
#top-01 .pad-box{
width: calc(40% - 30px);
margin-right: 30px;
}
#top-01 .sp-box{
width: 60%;
}
#top-01 > ul > li:nth-of-type(2){
margin: 0;
width: 100%;
padding-top: 120px;
}
#top-01 > ul > li:nth-of-type(2) h2{
position: absolute;
max-width: 610px;
top: -35px;
left: 50px;
}
#top-01 .box05-00{
display: none;
}
}
@media screen and (max-width: 780px){
#top-01{
background: linear-gradient(to bottom, #fff6bb 50%, white 50%);
padding: 15px;
}
#top-01 > ul > li{
width: 100%;
position: relative;
}
#top-01 > ul > li:nth-of-type(1){
border-radius: 30px;
padding: 15px 15px 30px;
display: block;
}
#top-01 .pad-box{
width: 80%;
}
#top-01 .sp-box{
width: 100%;
}
#top-01 .box01 img{
width: 160px;
display: block;
margin: 0 auto;
} 
#top-01 .box01{
position: absolute;
top: 30px;
left: auto;
right: 30px;
}
#top-01 .box01 a{
display: block;
position: absolute;
top:80px;
right: -10%;
width: 60px;
} 
#top-01 .box02{
margin-left:-18px;
padding: 5px 5px 0;
width: 80%;
}
#top-01 .box02 .day{
font-size: 55px;
}
#top-01 .box02 th,#top-01 .box02 td{
font-size: 18px;
padding-top: 0;
}
#top-01 h3{
margin: 10px 0 0;
font-size: 18px;
}
#top-01 > ul > li:nth-of-type(2){
padding: 15px 15px 30px;
margin: 0;
width: 100%;
border-radius: 30px;
margin-top: 0;
}
#top-01 > ul > li:nth-of-type(2) h2{
position: relative;
top:-30px;
left:auto;
}
#top-01 .box05 a{
margin: 50px auto 0;
}

/* 流れるテキスト */
.marquee-container {
width: 100%;
overflow: hidden;
white-space: nowrap;
background-color: #fff;
border-radius: 30px;
padding: 8px 0; /* 上下の余白 */
position: relative;
margin-top: -20px;
}
#top-01 .box06 ul{
padding: 5px 5px 5px 118px;
border: 1px solid #3c3c3c;
margin-top: 15px;
}
#top-01 .box06 li{
font-size: 12px;
min-height: 50px;
}
#top-01 .box06 img{
width: 100px;
position: absolute;
top:8px;
left: 8px;
}
#top-01 .box07 .recent-posts {
display: block;
gap: 15px;
}
#top-01 .box07 .post-item {
background: #fff;
width: 100%;
border-left: 5px solid #000;
padding: 5px 10px;
margin-bottom: 10px;
}
#top-01 .box07 .post-thumbnail img {
width: 100px;
height: auto!important;
display: block;
}
#top-01 .box07 .post-date,
#top-01 .box07 .post-category,
#top-01 .box07 .post-title,
#top-01 .box07 .post-thumbnail {
margin-bottom: 5px;
}
#top-01 .box07 .post-date{
font-size: 13px;
}
#top-01 .box07 .post-category span{
background: #d2d2d2;
padding: 5px 8px;
border-radius: 10px;
font-size: 9px;
line-height: 0.8em;
height: calc(10px + 1em);
display: inline-block;
margin: 0;
}
#top-01 .box07 .post-title{
font-size: 12px;
}
}
@media screen and (max-width: 450px){
#top-00{
display: block;
padding: 10px 15px;
}
#top-00 .box01 p {
color: #7EC78E;
font-weight: 700;
}
#top-00 .box01 .recent-posts {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#top-00 .box01 .post-item {
width: 49%;
background: #fff;
border: 1px solid #f0f0f0;
}
#top-00 .box01 .post-thumbnail img {
width: 80px;
height: auto!important;
float: left;
margin-right: 5px;
}
#top-00 .box01 .post-title{
padding: 2px 0 2px 5px;
margin: 0;
font-size: 11px;
line-height: 120%;
}
#top-01 .pad-box{
width: 100%;
}
#top-01 .box01 img{
width: 80%;
display: block;
margin: 0 auto;
} 
#top-01 .box01{
position: relative;
top: auto;
left: auto;
right: auto;
}
#top-01 .box01 a{
display: block;
position: absolute;
top:80px;
right: 0%;
width: 25%;
}
#top-01 .box02{
width: 100%;
} 
}

#top-02{
margin-top: 20px;
margin-bottom: 50px;
}
#top-02 h2{
max-width: 1100px;
margin: 0 auto 20px;
}
@media screen and (max-width: 1100px){
#top-02{
margin-top: 15px;
margin-bottom: 30px;
}
#top-02 h2{padding: 0 15px;}
}

#top-03{
padding-bottom: 50px;
background: linear-gradient(to bottom, white 40%, #DFEDF2 40%);
}
#top-03 .box{
border-top: 10px solid #6FC7D4;
background: #fff;
max-width: 1100px;
margin: 0 auto;
box-shadow: 20px 20px 0px 0px rgba(173, 209, 206, 0.4);
}
#top-03 .box .title{
display: flex;
flex-wrap: wrap;
position: relative;
padding: 0 30px;
margin-top: 10px;
}
#top-03 .box .title h2{
padding: 0 20px 0 0;
border-right: 1px solid #000;
margin: 0 20px 0 0;
}
#top-03 .box .title h3{
line-height: 150%;
margin-top: 15px;
}
#top-03 .box .title > img{
position: absolute;
top:-50px;
right: -40px;
width: 300px;
}
#top-03 .box01{
padding: 0 30px;
}
#top-03 .box01 .info{
background: #6FC7D4;
border-radius: 10px;
padding: 7px 130px 7px 10px;
margin-right: 310px;
position: relative;
}
#top-03 .box01 .info .inner{
background: #fff;
border-radius: 10px;
padding: 10px 15px;
display: flex;
flex-wrap: wrap;
}
#top-03 .box01 .info .inner p{
line-height: 110%;
}
#top-03 .box01 .info .inner p:nth-of-type(1){
padding-right: 10px;
border-right: 1px #000 solid;
margin-right: 10px
}
#top-03 .box01 .info a{
position: absolute;
top:10px;
right: 30px;
display: block;
}
@media screen and (max-width: 1200px){
#top-03 .box .title > img{right: 0px;width: 250px;}
}
@media screen and (max-width: 1100px){
#top-03{padding: 15px 15px 50px;}
#top-03 .box .title > img{width: 200px;}
#top-03 .box01 .info{margin-right: 200px;}
}
@media screen and (max-width: 1000px){
#top-03 .box .title > img{top:20px;width: 200px;}
#top-03 .box01 .info{margin-right: 200px;}
}
@media screen and (max-width: 900px){
#top-03 .box .title{display: block;top:0px;}
#top-03 .box .title h2{
padding: 10px 0 0 0;
border-right: none;
margin: 0;
max-width: 300px;
}
#top-03 .box .title h3{
margin-top: 0;
font-size: 16px;
}
#top-03 .box .title > img{
position: absolute;
top:-20px;
width: 200px;
}
#top-03 .box01 .info{margin: 10px 0;}
}
@media screen and (max-width: 780px){
#top-03{padding: 0 0 10px 0;}
#top-03 .box{box-shadow: none; padding: 0;}
#top-03 .box .title{padding: 0 15px;}
#top-03 .box01{padding: 0;}
#top-03 .box01 .info{
padding: 7px 100px 7px 10px;
margin: 10px;
}
#top-03 .box01 .info .inner{
padding: 8px 12px;
}
#top-03 .box01 .info .inner p{
line-height: 120%;
}
#top-03 .box01 .info .inner p:nth-of-type(1){
padding-right: 0;
border-right: none;
margin-right: 10px;
}
#top-03 .box01 .info a{
top: 50%;
right: 15px;
transform: translateY(-50%);
font-size: 90%;
}
}
@media screen and (max-width: 600px){
#top-03 .box .title{
margin-top: 0px;
}
#top-03 .box .title h2{
max-width: 180px;
}
#top-03 .box .title > img{
position: absolute;
top:-30px;
width: 130px;
}
}
#top-03 .box02{
padding: 0 30px;
}
#top-03 .wrapper {
  position: relative; /* ナビゲーション、ページネーションの位置決めに必要 */
  max-width: 1100px; /* サイトにあわせて任意で */
  margin: 0 auto 30px;
  --swiper-navigation-sides-offset: -25px; /* ナビゲーションボタンの位置 */
}
#top-03 .swiper-slide {
  background: #E7EDF0;
  padding: 10px;
  align-items:stretch;
  }
/* 矢印ボタン */
#top-03 .swiper-button-next,#top-03 .swiper-button-prev {
  width: 50px;
  height: 50px;
  z-index: 1!important;
}
#top-03 .swiper-button-next svg,#top-03 .swiper-button-prev svg {
  width: 50px; /* 矢印幅 */
  height: 50px; /* 矢印高さ */
  fill: #000; /* 矢印の色 */
  stroke: #000; /* 外周円の色 */
  transition: 0.2s;
}
#top-03 .swiper-button-next svg:hover,#top-03 .swiper-button-prev svg:hover {
  opacity: 0.7; /* ボタンホバー時 */
}
#top-03 .swiper-button-prev svg {
  transform: rotate(180deg); /* ボタンを反転（prev用） */
}
#top-03 .swiper-button-prev::after,#top-03 .swiper-rtl .swiper-button-next::after {
  content: ''; /* デフォルトの矢印を削除 */
}
#top-03 .swiper-button-next::after,#top-03 .swiper-rtl .swiper-button-prev::after {
  content: ''; /* デフォルトの矢印を削除 */
}
#top-03 .post-category-inner{
display: inline-block;
background: #B9E4EB;
padding: 5px 8px;
font-size: 75%;
margin-right: 5px;
border-radius: 20px;
line-height: 110%;
color: #333;
font-weight: 500;
}
#top-03 .post-title{
text-align: left;
font-weight: 500;
line-height: 130%;
margin-top: 5px;
}
#top-03 .box .button{
display: block;
width: 100%;
background: #6FC7D4;
padding: 10px;
text-align: center;
color: #fff;
}
@media screen and (max-width: 780px){
#top-03 .box02{padding: 0;}
#top-03 .wrapper {
  margin: 0 auto 15px;
  --swiper-navigation-sides-offset: 15px; /* ナビゲーションボタンの位置 */
}
#top-03 .swiper-slide {
font-size: 14px;
}
#top-03 .swiper-button-next,#top-03 .swiper-button-prev {
  width: 25px;
  height: 25px;
}
#top-03 .box .button{
font-size: 80%;
}
}

#top-04{
margin-top: 50px;
padding-bottom: 50px;
background: linear-gradient(to bottom, white 40%, #dfede1 40%);
}
#top-04 .box{
border-top: 10px solid #7ec68d;
background: #fff;
max-width: 1100px;
margin: 0 auto;
box-shadow: 20px 20px 0px 0px rgba(199, 224, 193, 0.4);
}
#top-04 .box .title{
display: flex;
flex-wrap: wrap;
position: relative;
padding: 0 30px;
margin-top: 10px;
}
#top-04 .box .title h2{
padding: 0 20px 0 0;
border-right: 1px solid #000;
margin: 0 20px 0 0;
}
#top-04 .box .title h3{
line-height: 150%;
margin-top: 15px;
}
#top-04 .box .title > img{
position: absolute;
top:10px;
right: 10px;
width: 300px;
}
#top-04 .box01{
padding: 0 30px;
}
#top-04 .box01 .info{
background: #7ec68d;
border-radius: 10px;
padding: 7px 130px 7px 10px;
margin-right: 310px;
position: relative;
}
#top-04 .box01 .info .inner{
background: #fff;
border-radius: 10px;
padding: 10px 15px;
display: flex;
flex-wrap: wrap;
}
#top-04 .box01 .info .inner p{
line-height: 110%;
}
#top-04 .box01 .info .inner p:nth-of-type(1){
padding-right: 10px;
border-right: 1px #000 solid;
margin-right: 10px
}
#top-04 .box01 .info a{
position: absolute;
top:10px;
right: 30px;
display: block;
}
#top-04 .box02{
padding: 15px;
}
#top-04 .box02-02{
display: flex;
flex-wrap: wrap;
}
#top-04 .box02-02 a{
display: block;
width: calc((100% - 60px)/2);
margin: 0 15px 15px!important;
}
#top-04 .box02-02 .event-item{
border: 1px solid #7ec48b!important;
border-radius: 15px;
height: 100px;
display: flex;
flex-wrap: wrap;
}
#top-04 .box02-02 .event-thumbnail{
width: 100px;
}
#top-04 .box02-02 .event-thumbnail img{
display: block;
object-fit: cover;
height: 98px;
border-radius: 15px 0 0 15px;
}
#top-04 .box02-02 .event-item h2{
width: calc(100% - 100px);
padding: 15px;
font-size: 110%;
line-height: 120%;
}
#top-04 .box02-02 .event-item h2 .event-date{
font-size: 80%;
margin-top: 5px;
}
#top-04 .box .button{
display: block;
width: 100%;
background: #7ec68d;
padding: 10px;
text-align: center;
color: #fff;
}
@media screen and (max-width: 900px){
#top-04 .box .title{display: block;top:0px;}
#top-04 .box .title h2{
padding: 10px 0 0 0;
border-right: none;
margin: 0;
max-width: 300px;
}
#top-04 .box .title h3{
margin-top: 0;
font-size: 16px;
}
#top-04 .box .title > img{
position: absolute;
top:-20px;
width: 200px;
}
#top-04 .box01 .info{margin: 10px 0;}
}
@media screen and (max-width: 780px){
#top-04{padding: 0 0 10px 0;}
#top-04 .box{box-shadow: none; padding: 0;}
#top-04 .box .title{padding: 0 15px;}
#top-04 .box01{padding: 0;}
#top-04 .box01 .info{
padding: 7px 100px 7px 10px;
margin: 10px;
}
#top-04 .box01 .info .inner{
padding: 8px 12px;
}
#top-04 .box01 .info .inner p{
line-height: 120%;
}
#top-04 .box01 .info .inner p:nth-of-type(1){
padding-right: 0;
border-right: none;
margin-right: 10px;
}
#top-04 .box01 .info a{
top: 50%;
right: 15px;
transform: translateY(-50%);
font-size: 90%;
}
#top-04 .box02{
padding: 15px 0;
}
#top-04 .box02-02{
display: block;
}
#top-04 .box02-02 a{
width: calc(100% - 30px);
}
#top-04 .box02-02 .event-item{
width: 100%;
height: 82px;
}
#top-04 .box02-02 .event-thumbnail{
width: 80px;
}
#top-04 .box02-02 .event-thumbnail img{
display: block;
object-fit: cover;
height: 80px;
border-radius: 15px 0 0 15px;
}
#top-04 .box02-02 .event-item h2{
width: calc(100% - 100px);
font-size: 100%;
}
#top-04 .box02-02 .event-item h2 .event-date{
font-size: 80%;
margin-top: 5px;
}
#top-04 .box .button{
display: block;
width: 100%;
background: #7ec68d;
padding: 10px;
text-align: center;
color: #fff;
}
}
@media screen and (max-width: 600px){
#top-04 .box .title{
margin-top: 0px;
}
#top-04 .box .title h2{
max-width: 180px;
}
#top-04 .box .title > img{
position: absolute;
top: -5px;
width: 130px;
}
}

#top-05 .box{
max-width: 1100px;
margin: 3rem auto 2rem;
}
#top-05 .swiper-slide{
padding: 0;
background: #ffe7e9!important;
}
#top-05 .card-thumb{
margin: 0;
}
#top-05 .post-date,
#top-05 .post-update{
display: none;
}
#top-05 .card-content{
padding: 0.5rem;
margin: 0;
}
#top-05 .card-title{
font-size: 80%;
}
#top-05 .box2{
display: flex;
flex-wrap: wrap;
gap: 1rem;    
margin: 3rem auto 2rem;
}
#top-05 .box2 a{
display: block;
flex: 0 0 calc(50% - 0.5rem);
}
@media screen and (max-width: 780px){
#top-05 .box{
margin: 1.5rem auto;
}
#top-05 .box2 {
padding: 0 15px;
}
#top-05 .box2 a {
flex: 0 0 100%;
}
#top-05 .swiper-slide{
width: 100px;
}
#top-05 .card-thumb{
width: 100%!important;
}
#top-05 .card-content{
padding: 0.3rem 0.1rem;
}
#top-05 .card-title{
font-size: 60%;
}
}

#top-06 .box{
max-width: 1100px;
margin: 3rem auto 3rem;
text-align: center;
}
#top-06 h4{
display: inline-block;
margin: 1rem auto 0;
padding: 0.5rem 1.5rem;
border-radius: 2rem;
color: #fff;
letter-spacing: 0.2rem;
background: #0858A9;
}
#top-06 table{
width: inherit;
margin: 1rem auto 0;
font-size: 90%;
}
#top-06 table tr,
#top-06 table th,
#top-06 table td{
background: none;
border: none;
padding: 0;
font-weight: 400;
letter-spacing: 0.1rem;
}
#top-06 table th{
padding-right: 15px;
}
#top-06 table tr td:nth-of-type(1){
text-align: right!important;
}
#top-06 table tr td:nth-of-type(2){
text-align: left!important;
}
#top-06 table .people{
}
#top-06 table .people th,
#top-06 table .people td{
font-size: 120%;
font-weight: 700;
color: #0858A9;
}
#top-06 p{
font-size: 85%;
margin: 0 auto;
}
@media screen and (max-width: 780px){
#top-06 .box{
margin: 1.5rem auto;
}
#top-06 table{
margin: 1rem auto 0.5rem;
font-size: 100%;
}
#top-06 table tr,
#top-06 table th,
#top-06 table td{
font-weight: 400;
letter-spacing: 0.1rem;
}
#top-06 p{
font-size: 70%;
}
}

/*ページナビ*/
.pagination-next {
  display: none;
}
/*ニュース一覧*/
.notecardtype time {
    display: block;
    color: #333;
    font-size: 14px;
}
.notecardtype__article {
    width: 100%;
    margin: 0 0 15px;
    border-bottom: 1px solid #C8C8C8;
    cursor: pointer;
    transition: 0.2s ease-in-out;
    padding-bottom: 15px;
    font-size: 95%;
}
.notecardtype__article:hover {
    transform: translateY(-3px);
}
.notecardtype__link {
    display: block;
    color: #555;
    text-decoration: none;
    cursor: pointer;
}
.notecardtype__link:hover {
color: #555;
}
.notecardtype__img {
display: table-cell;
    width: 120px;
    padding-right: 10px;
}
.notecardtype__img img {
    width: 100%;
    max-height: 80px; /* 高さを最大80pxに制限 */
    object-fit: cover; /* 画像が枠に収まるように調整 */
object-position: top;
overflow: hidden;
}
.notecardtype__article-info{
display: table-cell;
vertical-align: top;
}
.notecardtitle {
    font-weight: bold;
}
.pagenation_page{
    margin-top: 30px;
}
.page-numbers {
    display: inline-block;
    border-radius: 5px;
    font-size: 15px;
    font-weight: bold;
    text-decoration: none;
    line-height: 46px;
    text-align: center;
}
a.page-numbers:hover {
background-color: #966FAA;
color:#FFF;
text-decoration: none;
cursor: pointer;
}
.current {
color: #FFF;
background: #966FAA;
}
.pagenation_page {
    text-align: center;
}
.pagenation_page .next {
    width: auto;
    background: none;
    padding-left: 0.4em;
    border: none;
}
.pagenation_page .prev{
    width: auto;
    background: none;
    padding-right: 0.4em;
    border: none;
}
a.page-numbers.next:hover,
a.page-numbers.prev:hover{
color:#966FAA;
background: none;
opacity: 0.8;
}

@media only screen and (max-width: 481px){
.page-numbers {
    width: 30px;
    height: 30px;
    font-size: 14px;
    line-height: 28px;
}
}








