#over > main a{
    color: #0768B3;
}
.pickUp > .container{
    margin-top: 32px;
    margin-bottom: 47px;
    display: grid;
    row-gap: 24px;
}
.home-info{
    overflow: hidden;
    background: #F2F8FC;
}
.home #over > main article > section .home-info h2 {
    margin: 0;
    padding: 0;
}
.home-info > .container{
    margin-bottom: 50px;
}
/* ---------- ホーム画面見出し ---------- */
.home #over > main article > section h2{
    position: relative;
    display: grid;
    align-items: start;
    margin-bottom: 18px;
    margin-top: 0;
    border: none;
    justify-items: center;
    font-weight: 700;
    font-size: 14px;
    padding: 0;
}
.home #over > main article > section h2 a{
   display: inline-block;
}
.home #over > main article > section h2::before{
    content: '';
    position: absolute;
    background: #003399;
    width: 100%;
    height: 70%;
}
.home #over > main article > section .Topnews h2 div {
    color: #003399;
}
.home #over > main article > section .Topnews h2::before {
    content: none;
}
.home #over > main article > section .home-info h2::before{
    background: #0768B3;
}
.home #over > main article > section h2 div {
    font-size: 24px;
    line-height: 30px;
    background: #FFF;
    color: #0768B3;
    padding: 0 10px;
    display: inline-grid;
    justify-items: center;
    font-weight: 700;
    z-index: 5;
}
.home #over > main article > section .home-info h2 div {
    background: #F2F8FC;
    color: #0768B3;
}
.home #over > main article > section h2 small {
    font-size: 11px;
    font-family: din-condensed, sans-serif;
    font-weight: 400;
    color: #888888;
    line-height: 1rem;
}
#over > main header + * > .container p{
    margin-bottom: 25px;
}
.img-box {
    max-width: 720px;
    width: 100%;
    height: 100%;
}
body #over main header + * p.img-wrapper {
    padding-bottom: 62.6%;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    display: grid;
    justify-items: center;
    align-items: center;
    margin: 0;
    height: max-content;
}
.img-box img {
    min-width: 100%;
    min-height: 100%;
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    object-fit: cover;
    /* background: #aaaaaa; */
}
/* ---------- 各項目見出し ---------- */
#over > main header p,
#over > main header h1{
    font-size: 28px;
    color: #003399;
    display: grid;
    justify-items: center;
    justify-content: center;
    font-weight: 700;
    line-height: 32px;
    text-align: center;
}
#over > main header p small,
#over > main header h1 small{
    font-size: 13px;
    color: #888888;
    font-family: din-condensed, sans-serif;
    font-weight: 400;
    font-style: normal;
    margin-top: 4px;
    line-height: 20px;
    text-transform: uppercase;
}
#over > main header + * h2,
.single #over > main header + * h1{
    font-size: 20px;
    margin-bottom: 10px;
    padding-bottom: 10px;
    padding-left: 13px;
    border-bottom: 1px dashed #0768B3;
    position: relative;
    font-weight: 700;
    margin-top: 30px;
    margin-bottom: 20px;
}
#over > main header + * h2::before,
.single #over > main header + * h1::before{
    content: '';
    position: absolute;
    background: #0768B3;
    left: 0;
    width: 5px;
    height: calc(100% - 10px);
}
#over > main header + * h2 small,
.single #over > main header + * h1 small{
    font-size: 14px;
    font-weight: 400;
}
#over > main header + * h3,
.single #over > main header + * h2{
    position: relative;
    display: flex;
    justify-content: center;
    color: #023399;
    padding: 0;
    border-bottom: none;
    margin-top: 30px;
    margin-bottom: 20px;
}
#over > main header + * h3::before,
.single #over > main header + * h2::before{
    content: '';
    background: none;
    position: absolute;
    border-top: 1px dashed #0768B3;
    width: 100%;
    height: 1px;
    top: 50%;
    z-index: -5;
}
#over > main header + * h3,
.single #over > main header + * h2{
    font-size: 18px;
}
#over > main header + * h3 div,
.single #over > main header + * h2 div{
    background: #FFF;
    padding: 5px;
}
#over > main header + * h3 small,
.single #over > main header + * h2 small{
    font-size: 13px;
    font-weight: 400;
    position: relative;
    padding-left: 5px;
}
#over > main header + * h4,
.single #over > main header + * h3{
    font-size: 17px;
    font-weight: 700;
    padding-left: 23px;
    position: relative;
    margin-top: 30px;
    margin-bottom: 20px;
    display: block;
    color: #2B2B2B;
}
#over > main header + * h4::before,
.single #over > main header + * h3::before{
    content: '';
    position: absolute;
    background: #888888;
    width: 15px;
    height: 3px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);

}
#over > main header + * h4 small,
.single #over > main header + * h3 small{
    font-size: 12px;
    font-weight: 400;
}
#over > main header + * img + h2,
#over > main header + * img + h3,
#over > main header + * img + h4,
.single #over > main header + * img + h1,
.single #over > main header + * img + h2,
.single #over > main header + * img + h3{
    margin-top: 16px;
}
.single #over > main header + * h4,
.single #over > main header + * h4 small{
    font-size: inherit;
    font-weight: inherit;
    margin: initial;
    padding: initial;
}
.single #over > main header + * h4::before{
    display: none;
}
/* ---------- 各記事共通 ---------- */
#over > main header{
    background: #F2F8FC;
    height: 30vw;
    min-height: 158px;
    max-height: 182px;
    position: relative;
}
#over > main header .container::after{
    content: '';
    position: absolute;
    background: #003399;
    width: 144px;
    height: 8px;
    bottom: 0;
}
#over > main header .container{
    display: grid;
    justify-items: center;
    align-items: center;
    align-content: center;
    height: 100%;
    position: relative;
}
/* ---------- 補足 ---------- */
#over > main header + * blockquote{
    background: #F2F8FC;
    border: 1px solid #0768B3;
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 0 30px 0 30px;
    overflow: hidden;
}
#over > main header + * .container blockquote p{
    color: #2B2B2B;
    margin-bottom: 16px;
}
#over > main header + * blockquote h5,
.single #over > main header + * blockquote h4{
    padding: 0;
    margin: 0;
    font-size: 17px;
    font-weight: 700;
    display: block;
    color: #0768B3;
    border-bottom: 1px solid #CCCCCC;
    padding-bottom: 14px;
    margin-bottom: 16px;
}
.single #over > main header + * blockquote h4::before{
    display: none;
}
#over > main header + * .container blockquote > *:first-child{
    margin-top: 20px;
}
#over > main header + * .container blockquote > *:last-child{
    margin-bottom: 20px;
    display: block;
}
/* ---------- リスト（ul, ol） ---------- */
#over > main header + * ul,
#over > main header + * ol{
    margin-top: 20px;
    margin-bottom: 22px;
}
#over > main header + * ul{
    margin-left: 10px;
}
#over > main header + * ul li{
    position: relative;
    list-style-type: none;
    padding-left: 22px;
}
#over > main header + * ul li::before{
    content: '';
    position: absolute;
    background: url(../images/pochi.svg) no-repeat;
    background-size: contain;
    left: 0;
    width: 14px;
    height: 14px;
    top: 6px;
}
#over > main header + * ol{
    margin-left: 26px;
}
#over > main header + * ol li{
    padding-left: 5px;
}
#over > main header + * ul li,
#over > main header + * ol li{
   margin-bottom: 12px;
}
/* ---------- 表（table） ---------- */
main .x-scroll{
    overflow-x: scroll;
    margin: 0 calc(50% - 50vw) 0 0;
    margin-top: 30px;
    margin-bottom: 30px;
}
#over main table,#over main table thead,
#over main table tbody,#over main table tfoot{
    -webkit-text-size-adjust: 100%;
}
#over main table {
    border: 0px none;
    width: 100%;
    border-top: 1px solid #ACACAC;
    border-bottom: 1px solid #ACACAC;
    border-collapse: collapse;
    border-spacing: 0;
    border-collapse: collapse;
    width: max-content;
    font-size: 14px;
    line-height: 26px;
    min-width: calc(100% - var(--bs-gutter-x,1.33rem));
}
#over main table thead {
    border-top: #002DA0 solid 1px;
    border-bottom: #002DA0 solid 1px;
    background: #0768B3;
    color: #fff;
}
#over main table thead th, #over main table thead td{
    text-align: center;
}
#over main table th, #over main table td {
    border: 0px none;
    padding: 16px;
    font-weight: 400;
    text-align: start;
    vertical-align: baseline;
    font-size: 14px;
}
#over main table thead{
    border-bottom: #002DA0 solid 1px;
}
#over main table tbody{
	border-top: 1px solid #ACACAC;
    border-bottom: 1px solid #ACACAC;
}
#over main table th, #over main table td {
    border: 0px none;
    padding: 16px;
}
#over main table tbody tr th {
	border-bottom: 1px solid #0768B3;
    background: #D6E4EF;
}
#over main table tbody tr > * {
	border-right: 1px solid #CBCBCB;
}
#over main table tbody tr > *:last-child {
	border-right: none;
}
/* #over main table tbody tr:nth-child(6n+4) th,
#over main table tbody tr:nth-child(6n+5) th,
#over main table tbody tr:nth-child(6n+6) th {
	border-bottom: 1px solid #ACACAC;
} */
#over main table tbody tr:last-child th{
	border-bottom: 1px solid #0768B3;
}
#over main table tbody tr td {
    border-bottom: 1px solid #CBCBCB;
}
#over main table tbody tr:nth-child(odd) td {
	background: #FFF;
}
#over main table tbody tr:nth-child(even) td {
	background: #F2F8FC;
}
#over main table tbody tr td.odd{
    background: #FFF;
}
#over main table tbody tr td.even{
    background: #F2F8FC;
}
#over main table tfoot {
    background: #F5F5F5;
    border-top: 1px solid #0768B3;
    border-bottom: 1px solid #CBCBCB;
}
#over main table th, main table td {
    padding: 16px;
    min-width: 130px;
    max-width: 409px;
}
/* ---------- ページャー（pager） ---------- */
.pager{
	margin:45px 0;
}
.wp-pagenavi a, .current {
    display: inline-block;
}
.wp-pagenavi{
    font-size:0;
}
.wp-pagenavi > *{
    margin-right: 5px;
}
.wp-pagenavi > *:last-child{
    margin-right: 0;
}
.pager-inner {
    text-align: center;
    margin: 0;
    padding: 0;
}
#over > main .pager .current{
    background: #003399;
    color: #FFFFFF;
}
#over > main .pager span, #over > main .pager a{
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 0 2px;
    min-width: 40px;
    height: 40px;
    text-decoration: none;
	font-size: 14px;
    transition:0.2s ease-out;
    border-radius: 50%;
    color: #333333;
    border: 1px solid rgba(0,0,0,.0);
}
#over > main .pager a:hover {
    text-decoration: none;
	transition:0.4s ease-out;
    border: 1px solid #0768B3;
    color: #0768B3;
}
/* ---------- ボタン共通（button） ---------- */
#over > main .wp-block-button,
#over > main button{
    border: none;
    color: #FFF;
    border-radius: 999px;
    font-weight: 700;
    position: relative;
    display: grid;
    align-items: center;
    /* 2024.11.08 要望により幅指定解除	
    width: 74.5vw;
    max-width: 350px;*/
    overflow: hidden;
    /* 2024.11.08 要望により中央配置解除
	  margin: 30px auto;*/
    margin-top: 30px;
    margin-bottom: 30px;	
    box-shadow: 0px 3px 10px #00000026;
}
.home #over > main button {
    width: 74.5vw;
    max-width: 350px;
	  margin: 30px auto;
}
#over > main .wp-block-button a,
#over > main button a{
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    border-radius: 999px;
    display: block;
    color: #023399;
    background: #FFF;
    border: 1px solid #3366CC;
    padding: 13px 40px;
    transition: .4s;
    position: relative;
    font-family: source-han-sans-japanese, sans-serif;
    font-weight: 700;
    text-transform: none;
}
#over > main .wp-block-button a:hover,
#over > main button a:hover{
    color: #FFFFFF;
    border: 1px solid #3366CC;
    background: #3366CC;
    transition: .4s;
}
#over > main .wp-block-button a::after,
#over > main button a::after{
    content: '';
    position: absolute;
    background: url(../images/arrow_line_right-min.svg) no-repeat;
    background-size: contain;
    width: 11px;
    height: 11px;
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
}
#over > main .wp-block-button a:hover::after,
#over > main button a:hover::after{
    content: '';
    position: absolute;
    background: url(../images/arrow_line_right-min.svg) no-repeat;
    background-size: contain;
    width: 11px;
    height: 11px;
    filter:invert(100%) sepia(40%) saturate(0%) hue-rotate(60deg) brightness(125%) contrast(110%);
}
/* タブ */
.list-tab{
    position: relative;
}
.list-tab::after{
    content: '';
    position: absolute;
    width: 100vw;
    height: 4px;
    background: #EFEFEF;
    bottom: 0;
    margin: 0 calc(50% - 50vw);
}
#over > main header + * .list-tab ul{
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 30px;
    margin-left: 0;
}
#over > main header + * .list-tab ul li{
    cursor: pointer;
    font-weight: 700;
    border-bottom: 4px solid transparent;
    margin: 0;
    padding: 0;
}
#over > main header + * .list-tab ul li a{
    display: block;
    color: #2B2B2B;
    width: 100%;
    height: 100%;
    text-decoration: none;
    padding: 20px 0;
    transform: .3s;
}
#over > main header + * .list-tab ul li a:hover{
    color: #0768B3;
    transition: .4s ease-out;
}
#over > main header + * .list-tab ul li.active{
    border-bottom: 4px solid #0768B3;
    z-index: 10;
}
#over > main header + * .list-tab ul li.active a {
    color: #0768B3;
}
.list-tab li::before{
    display: none;
}
/* ---------- お問い合わせ（form） ---------- */
.formLine dl {
    display: grid;
}
.formLine dt {
    height: 100%;
    /* padding: 11px 50px 11px 20px; */
    font-size: 14px;
}
.formLine dt label{
    /* height: 100%; */
    padding: 11px 30px 11px 20px;
    /* font-size: 14px; */
}
/* お問い合わせ */
input[type="submit"] {
    -webkit-appearance: none;
    border-radius: 0;
}
.formLine:not(.privacy-policy) dl dd{
    padding-left: 8px;
    border-left: 2px solid #0768B3;
    display: grid;
    align-items: start;
    align-content: center;
    justify-items: start;
}
.formLine dl dt.required label {
    display: flex;
    /* grid-template-columns: auto auto; */
    justify-content: space-between;
    align-items: center
}
.formLine dl dt.required {
    /* position: relative; */
    display: block;
}
.formLine .required label span {
    /* content: "必須"; */
    display: inline-block;
    font-size: 12px;
    color: #000000;
    text-align: center;
    /* position: absolute; */
    right: 20px;
    font-weight: 700;
    line-height: 1rem;
    padding: 4px 6px 5px;
    background: #EFDC05;
    border-radius: 2px;
    white-space: nowrap;
}
/* .formLine .required label::after {
    content: "必須";
    display: inline-block;
    font-size: 12px;
    color: #000000;
    text-align: center;
    position: absolute;
    right: 20px;
    font-weight: 700;
    line-height: 1rem;
    padding: 4px 6px 5px;
    background: #EFDC05;
    border-radius: 2px;
} */
.formLine input, .formLine textarea {
    padding: 16px 12px;
    border: #cccccc solid 1px;
    font-size: 16px;
    border-radius: 3px;
    width: 100%;
}
.formLine dd.error input,
.formLine dd.error textarea{
    border: 1px solid #BF0000;
}
.formLine.privacy-policy input{
    width: auto;
}
.formLine textarea {
    display: block;
    width: 100%;
}
.formLine input:focus, .formLine textarea:focus {
    border: #0768B3 solid 1px;
}
button, input {
    overflow: visible;
}
input[type="text"] {
    width: 100%;
}
.formLine .wpcf7-not-valid-tip,
.formLine dd span.error {
    display: inline-block;
    font-size: 12px;
    font-size: 0.8rem;
    color: #FFF;
    background: #BF0000;
    border-radius: 3px;
    padding: 8px;
    line-height: 1;
}
::placeholder {
    color: #8D8D8D;
}
.privacy-policy-check{
    display: inline-block;
}
.formLine.privacy-policy dl dt{
    padding: 0;
}
.formLine.privacy-policy dl dd{
    text-align: center;
    padding: 31px;
}
.formLine.privacy-policy a{
    color: #0768B3;
}
#over > main .submit-warp br{
    display: none;
}
#over > main .submit-warp .back input,
#over > main .submit-warp .back button {
    background: #FDFDFD;
    border: none;
    font-weight: 700;
    display: inline-block;
    padding: 20px 23px;
    text-align: center;
    font-size: 14px;
    border: 1px solid #888888;
    color: #888888;
    line-height: 1.0;
    transition: 0.2s;
    margin: 0 auto;
    outline: none;
    border-radius: 43px;
    box-shadow: 0px 3px 10px #00000026;
    width: auto;
    margin-right: 15px;
    font-family: source-han-sans-japanese, sans-serif;
    font-weight: 400;
    font-style: normal;
}
#over > main .submit-warp input,
#over main .submit-warp .submit button {
    background: none;
    border: none;
    font-weight: 700;
    display: block;
    padding: 34px 48px;
    text-align: center;
    background: #0DC9F7;
    font-size: 18px;
    color: #FFF;
    line-height: 1.0;
    transition: 0.2s;
    margin: 0 auto;
    outline: none;
    border-radius: 43px;
    box-shadow: 0px 3px 10px #00000026;
    transition: .3s;
    width: auto;
    font-family: source-han-sans-japanese, sans-serif;
    font-weight: 700;
    font-style: normal;
}
#over > main .submit-warp .back input:hover,
#over > main .submit-warp .back button:hover {
    background: #FDFDFD;
}
#over > main .submit-warp input:hover,
#over main .submit-warp .submit button:hover {
    background: #003399;
    transition: .3s;
}
.submit-warp {
    display: grid;
    grid-template-columns: max-content max-content;
    justify-content: center;
    align-items: center;
    justify-items: center;
}
#over > main .submit-warp .submit input {
    margin-bottom: 0;
}
#over > main .submit-warp .submit,
body.confirmation #over > main .submit-warp .confi{
    display: none;
}
body.confirmation #over > main .submit-warp .submit{
    display: block;
}
/* スケジュール */
/*
#over main .wp-block-table {
    overflow-x: initial;
    margin: 0;
}
.schedule-list{
    display: grid;
    row-gap: 5px;
}
.schedule-list .wp-block-group,
.schedule-list dl{
    position: relative;
}
.schedule-list .wp-block-group::before,
.schedule-list dl::before{
    content: '';
    position: absolute;
    background: url(../images/cal.svg) no-repeat;
    background-size: contain;
    width: 16px;
    height: 16px;
    left: 0;
    top: 4px;
    filter: invert(50%) sepia(42%) saturate(1000%) hue-rotate(175deg) brightness(70%) contrast(100%);
    z-index: 5;
    top: 24px;
    left: 20px;
}
.schedule-list .wp-block-group.active::before,
.schedule-list dl.active::before{
    filter:none;
}*/
/* 202403 スケジュール 表示変更 */
.schedule-list {
	 display: grid;
        row-gap:0 !important;
}
.schedule-list table thead tr th,
.schedule-list table tbody tr th,
.schedule-list table thead tr td,
.schedule-list table tbody tr td{
	padding: 4px !important;
	line-height: 1.2 !important;
	font-size: 0.75rem !important;
}
.schedule-list table thead tr th,
.schedule-list table tbody tr th{
	width: 8em;
}
.schedule-list table thead tr td,
.schedule-list table tbody tr td{
	width: 20%;
}
#over main .schedule-list  table tbody tr th{
	font-size: 1.0rem !important;
	font-weight: normal;
}

body #over .schedule-list .wp-block-group h2,
.schedule-list dl dt{
    background: #F2F8FC;
    padding: 20px 20px 20px 50px;
    position: relative;
    margin: 0;
    display: block;
    font-size: 1rem;
    font-weight: 400;
    color: #2B2B2B;
}
body #over .schedule-list .wp-block-group h2::before,
.schedule-list dl dt::before{
    content: '';
    position: absolute;
    background: #0768B3;
    width: 1px;
    height: 18px;
    top: 24px;
    right: 30px;
    left: auto;
    z-index: 0;
}
body #over .schedule-list .wp-block-group h2::after,
.schedule-list dl dt::after{
    content: '';
    position: absolute;
    background: #0768B3;
    width: 18px;
    height: 1px;
    top: 32px;
    right: 22px;
}
body #over .schedule-list .wp-block-group.active h2::before,
.schedule-list dl.active dt::before{
    background: #003399;
}
body #over .schedule-list .wp-block-group.active h2::after,
.schedule-list dl.active dt::after{
    background: #FFF;
}
body #over .schedule-list .wp-block-group figure.wp-block-table,
.schedule-list dl dd{
    display: none;
    position: relative
}
body #over .schedule-list .wp-block-group.active h2,
.schedule-list dl.active dt{
    background: #003399;
    padding: 20px 20px 20px 50px;
    color: #FFF;
}
body #over .schedule-list .wp-block-group.active figure.wp-block-table,
.schedule-list dl.active dd{
    position: relative
}
#over main .schedule-list table{
    min-width: 100%;
    width: max-content;
}
#over main .schedule-list table th,
#over main .schedule-list table td{
    min-width: 109px;
    max-width: 393px;
    border-bottom:  none;
}
#over main .schedule-list .x-scroll{
    position: relative;
    position: relative;
    margin: 0 calc(50% - 50vw) 0 0;
    overflow-x: scroll;
    padding-right: 50px;
    padding-right: 20px;
}
#over main .schedule-list .x-scroll table{
    border: 3px solid #003399;
}

/* スライド */
#over > main header + * .Topnews .slick-list{
    border: 1px solid #0768B3;
    border: 1px solid #0768B3;
    max-width: 1115px;
    margin: 0 auto;
}
body #over > main header + * .Topnews {
    font-size: 14px;
}
#over > main header + * .Topnews ul,
#over > main header + * .Topnews ul li {
    padding: 0;
    margin: 0;
}
#over > main header + * .Topnews ul li::before {
    display: none;
}
#over > main header + * > .container .prev-arrow,
#over > main header + * > .container .next-arrow{
    display: none;
}

#over > main header + * > .container .prev-arrow{
    width: 14px;
    height: 27px;
    position: absolute;
    left: -34px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
}
#over > main header + * > .container .next-arrow{
    width: 14px;
    height: 27px;
    position: absolute;
    right: -34px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
}
.slick-dots li button::before {
    width: 15px;
    height: 15px;
    content: '';
    background: #3366CC;
    border-radius: 50%;
    opacity: 0.2;
}
#over > main .slick-dots li button {
    height: 15px;
    width: 15px;
    box-shadow: none;
}
.slick-dots .slick-active button {
    background: #3366CC;
}
.slick-dots {
    bottom: -35px;
}
#over > main .news-gallery{
    position: relative;
}
#over > main .news-gallery,
#over > main .mainv-gallery{
    display: none;
  }
#over > main .news-gallery.slick-initialized,
#over > main .mainv-gallery.slick-initialized{
    display: block; /*slick-initializedが付与されたら表示*/
}
/* 各ページへ戻る */
.backLink{
    margin-bottom: 30px;
}
.backLink button {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
/* イベント情報-概要 */
.eventInfo-single{
    background: #F2F8FC;
    border: 1px solid #0768B3;
    margin-bottom: 15px;
    padding: 0 25px 0 25px;
    overflow: hidden;
    font-weight: bold;
}
.infoTag + .eventInfo-single{
    margin-top: 20px;
}
#over > main header + * .eventInfo-single p{
    margin-bottom: 0;
}
#over > main header + * .eventInfo-single > *:first-child {
    margin-top: 24px;
}
#over > main header + * .eventInfo-single > *:last-child {
    margin-bottom: 30px;
}
/* ページ日付とカテゴリー */
#over main .upDate-Category{
    background: #F8F8F8;
    color: #888888;
    background-image: linear-gradient(to right, #2D7DBC, #2D7DBC 1px, transparent 0px, transparent 1px);
    background-size: 2px 1.5px;
    background-position: left top;
    background-repeat: repeat-x;
    font-size: 12px;
    padding: 16px 30px 15px 10px;
    margin-top: 45px;
    margin-bottom: 45px;
}
#over > main header + * .upDate-Category p{
    margin: 0;
}
#over main .upDate-Category a{
    color: #003399;
}
#over main .upDate-Category p:first-child,
#over main .upDate-Category p:nth-child(2){
    position: relative;
    padding-left: 24px;
}
#over main .upDate-Category p:first-child::before{
    content: '';
    position: absolute;
    background: url(../images/cal.svg) no-repeat;
    background-size: contain;
    width: 16px;
    height: 16px;
    left: 0;
    top: 4px;
    filter: invert(58%) sepia(1%) saturate(0%) hue-rotate(174deg) brightness(92%) contrast(89%);
}
#over main .upDate-Category p:nth-child(2)::before{
    content: '';
    position: absolute;
    background: url(../images/icon_folder.svg) no-repeat;
    background-size: contain;
    width: 16px;
    height: 16px;
    left: 0;
    top: 4px;
    filter: none;
}
/* ---------- 各ファイル形式 ---------- */
#over > main header + * a{
    position: relative;
}
#over > main header + * .archive-list a p{
    position: relative;
}
#over > main header + * .archive-list a[target="_blank"] p::after,
#over > main header + * a[target="_blank"]::after{
	content:'';
    background: url("../images/icon_outlink.svg") no-repeat;
    background-size: contain;
    width: 18px;
    height: 18px;
	display:inline-block;
	margin-left:5px;
    vertical-align: middle;
}
#over > main header + * .archive-list a[href$=".pdf"] p:after,
#over > main header + * a[href$=".pdf"]:after{
    content:'';
    background: url("../images/icon_pdf.svg") no-repeat;
    background-size: contain;
    width: 42px;
    height: 22px;
	display:inline-block;
	margin-left:5px;
    vertical-align: middle;
}
#over > main header + * .archive-list a[href$=".docx"] p:after,
#over > main header + * .archive-list a[href$=".doc"] p:after,
#over > main header + * a[href$=".docx"]:after,
#over > main header + * a[href$=".doc"]:after{
	content:'';
    background: url("../images/icon_Word.svg") no-repeat;
    background-size: contain;
    width: 42px;
    height: 22px;
	display:inline-block;
	margin-left:5px;
    vertical-align: middle;
}
#over > main header + * .archive-list a[href$=".xls"] p:after,
#over > main header + * .archive-list a[href$=".xlsx"] p:after,
#over > main header + * a[href$=".xls"]:after,
#over > main header + * a[href$=".xlsx"]:after {
	content:'';
    background: url("../images/icon_Excel.svg") no-repeat;
    background-size: contain;
    width: 42px;
    height: 22px;
	display:inline-block;
	margin-left:5px;
    vertical-align: middle;
}
#over > main header + * .archive-list section a::after{
    display: none;
}
/* ---------- 調整 ---------- */
#over main header + * p > img{
    vertical-align: bottom;
}
#over main header + * .wp-block-columns {
    margin-top: 30px;
}
#over main header + * .wp-block-column{
    margin-bottom: 15px;
}
#over main header + * .wp-block-column > *:first-child{
    margin-top: 0;
}
#over main header + * .wp-block-column > *:last-child{
    margin-bottom: 0;
}
#over > main header + * .g-map{
    padding-bottom: 62.5%;
    position: relative;
    height: 0;
    overflow: hidden;
}
#over > main header + * iframe{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
/* 追加 */
#over main .wp-block-image .aligncenter,
#over main .wp-block-image .alignleft,
#over main .wp-block-image .alignright {
    display: inline-block;
    width: 100%;
    height: 100%;
    margin: 0;
    float: none;
}
#over main .wp-block-image .aligncenter .img-box {
    margin: 0 auto;
}
#over main .wp-block-image .alignleft .img-box {
    margin: 0 auto 0 0;
}
#over main .wp-block-image .alignright .img-box {
    margin: 0 0 0 auto;
}
/* 追加 */
.grid-2c > div:first-child{
    grid-area: A;
}
.grid-2c > div:nth-child(2){
    grid-area: B;
}
.grid-2c {
    display: grid;
    grid-template-areas:
    "B"
    "A";
}
#over .grid-2c > div:first-child > *:first-child {
    margin-top: 24px;
}
@media screen and (min-width: 360px){
    #over > main header + * .list-tab ul li{
        white-space: nowrap;
    }
}
@media screen and (min-width: 540px){
    #over > main .x-scroll {
        margin-left: auto;
        margin-right: auto;
    }
    #over > main table{
        margin-right: 0;
        min-width: 100%;
    }
}
@media (min-width: 600px) and (max-width: 781px){
    #over main .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:only-child) {
        flex-basis: 100%!important;
    }
    #over main .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:nth-child(2n) {
        margin-left: 0;
    }
}
@media (min-width: 768px) and (max-width: 781px){
    #over main .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:only-child) {
        flex-basis: calc(50% - var(--wp--style--block-gap, 2em)/2)!important;
        flex-grow: 0;
    }
    #over main .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:nth-child(2n) {
        margin-left: var(--wp--style--block-gap,2em);
    }
}
/* ---------- レスポンシブ　(768px以上) ---------- */
@media screen and (min-width:768px){
    .pickUp > .container{
        margin-top: 47px;
        margin-bottom: 90px;
    }
    .home-info > .container{
        margin-top: 15px;
        margin-bottom: 93px;
    }
    /* ---------- ホーム画面見出し ---------- */
    .home #over > main article > section h2 div {
        font-size: 36px;
    }
    .home #over > main article > section h2 small {
        font-size: 12px;
        line-height: 41px;
    }
    #over > main header + * > .container p{
        margin-bottom: 35px;
    }
    /* ---------- 各項目見出し ---------- */
    #over > main header p,
    #over > main header h1{
        font-size: 36px;
    }
    #over > main header p span,
    #over > main header h1 div{
        color: #003399;
        line-height: 42px;
    }
    #over > main header p small,
    #over > main header h1 small{
        color: #888888;
        font-family: din-condensed, sans-serif;
        font-style: normal;
        margin-top: 8px;
        margin-bottom: -16px;
    }
    #over > main header + * h2,
    .single #over > main header + * h1{
        font-size: 30px;
        padding-bottom: 15px;
        padding-left: 20px;
    }
    #over > main header + * h2 small,
    .single #over > main header + * h1 small{
        font-size: 17px;
    }
    #over > main header + * h3,
    .single #over > main header + * h2{
        font-size: 24px;
    }
    #over > main header + * h3 small,
    .single #over > main header + * h2 small{
        font-size: 17px;
    }
    #over > main header + * h4,
    .single #over > main header + * h3{
        font-size: 20px;
    }
    #over > main header + * h4 small,
    .single #over > main header + * h3 small{
        font-size: 17px;
    }
    /* ---------- 各記事共通 ---------- */
    /* ---------- 補足 ---------- */
    #over > main header + * blockquote{
        background: #F2F8FC;
        border: 1px solid #0768B3;
        margin-top: 30px;
        margin-bottom: 45px;
        padding: 0 30px 0 30px;
        overflow: hidden;
    }
    #over > main header + * .container blockquote p{
        color: #2B2B2B;
        margin-bottom: 16px;
    }
    #over > main header + * blockquote h5,
    .single #over > main header + * blockquote h4{
        font-size: 20px;
        display: block;
        color: #0768B3;
        border-bottom: 1px solid #CCCCCC;
        padding-bottom: 13px;
        margin-bottom: 21px;
    }
    #over > main header + * .container blockquote > *:first-child{
        margin-top: 30px;
    }
    #over > main header + * .container blockquote > *:last-child{
        margin-bottom: 45px;
        display: block;
    }
     /* ---------- タブ ---------- */
    #over > main header + * .list-tab ul li{
        margin: 0;
    }
     /* ---------- リスト ---------- */
    #over > main header + * ul li::before {
        top: 10px;
    }
    #over > main header + * ul, #over > main header + * ol {
        margin-top: 25px;
        margin-bottom: 27px;
    }
    #over > main header + * ul li, #over > main header + * ol li {
        margin-bottom: 14px;
    }
    #over > main header + * ul {
        margin-left: 17px;
    }
    .backLink{
        margin-bottom: 90px;
    }
    /* ---------- 表（table） ---------- */
    main .x-scroll{
        overflow-x: auto;
        margin: 45px auto;
    }
    #over main table {
        white-space: normal;
        /* width: 100%; */
    }
    /* ページ日付とカテゴリー */
    #over main .upDate-Category{
        background: #F8F8F8;
        color: #888888;
        background-image: linear-gradient(to right, #2D7DBC, #2D7DBC 1px, transparent 0px, transparent 1px);
        background-size: 2px 1.5px;
        background-position: left top;
        background-repeat: repeat-x;
        font-size: 14px;
        padding: 16px 30px 15px 10px;
        margin-top: 45px;
        margin-bottom: 45px;
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }
    #over > main header + * .upDate-Category p {
        margin: 0;
    }
    #over main .upDate-Category p:first-child,
    #over main .upDate-Category p:nth-child(2){
        padding-left: 28px;
    }
    #over main .upDate-Category p:first-child::before,
    #over main .upDate-Category p:nth-child(2)::before{
        width: 20px;
        height: 20px;
        left: 0;
        top: 6px;
    }
    #over main .upDate-Category p:nth-child(2){
        margin-left: 20px;
    }
    /* イベント情報-概要 */
    #over > main header + * .eventInfo-single p{
        margin-bottom: 0;
    }
    /* ---------- お問い合わせ（form） ---------- */
    .formLine dt {
        font-size: 17px;
    }
    .formLine.privacy-policy dl dd {
        text-align: start;
    }
    .schedule-list{
        display: grid;
        row-gap: 5px;
    }
    body #over .schedule-list .wp-block-group h2,
    .schedule-list dl dt{
        background: #F2F8FC;
        padding: 20px 20px 20px 50px;
        position: relative;
        cursor: pointer;
    }
    .schedule-list .wp-block-group,
    .schedule-list dl{
        position: relative;
    }
    .schedule-list .wp-block-group::before,
    .schedule-list dl::before{
        content: '';
        position: absolute;
        background: url(../images/cal.svg) no-repeat;
        background-size: contain;
        width: 16px;
        height: 16px;
        left: 0;
        top: 4px;
        z-index: 5;
        top: 28px;
        left: 20px;
    }
    body #over .schedule-list .wp-block-group h2::before,
    .schedule-list dl dt::before{
        top: 27px;
    }
    body #over .schedule-list .wp-block-group h2::after,
    .schedule-list dl dt::after{
        top: 36px;
    }
    #over > main header + * > .container .prev-arrow,
    #over > main header + * > .container .next-arrow{
        display: block;
    }
    /* ボタン共通 */
    #over > main .wp-block-button a,
    #over > main button a{
    padding: 20px 40px;
    font-size: 18px;
    }
    /* 調整 */
    .grid-2c{
        display: grid;
        grid-template-columns: 1fr 1fr;
        column-gap: 95px;
        margin: 0;
        padding: 0;
        border: none;
        grid-template-areas:"A B";
    }
    .grid-3c{
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        column-gap: 25px;
        margin: 0;
        padding: 0;
        border: none;
    }
}
/* ---------- レスポンシブ　(768px以上) ---------- */
@media screen and (min-width:992px){
    /* ---------- お問い合わせ（form） ---------- */
    .formLine dl {
        display: grid;
        grid-template-columns: 4fr 6fr;
        margin-bottom: 30px;
    }
    .formLine:not(.privacy-policy) dl dd {
        padding-left: 28px;
    }
}
/* ---------- レスポンシブ　(768px以上) ---------- */
@media screen and (min-width:1200px){
    /* ---------- お問い合わせ（form） ---------- */
    .formLine dl {
        display: grid;
        grid-template-columns: 4fr 6fr;
        margin-bottom: 30px;
    }
    .formLine:not(.privacy-policy) dl dd {
        padding-left: 28px;
    }
    #over main .schedule-list .x-scroll {
        position: relative;
        position: relative;
        margin: auto;
        width: 100%;
        overflow-x: hidden;
        padding: 0;
    }
    #over main .schedule-list table {
        white-space: pre-wrap;
    }
}
@media screen and (min-width:1400px){
    #over > main header + * > .container .prev-arrow{
        left: 55px
    }
    #over > main header + * > .container .next-arrow{
        right: 55px;
    }
}

.container h1 div span.subtitle {
	font-size: 0.5em !important;
 display: block;
	margin: 0 auto 0.5em;
	line-height: 1;
}
/* 20250130 */
.taxonomy-description {
	padding:1rem;
	box-sizing: border-box;
	display: block;
	background: #fff;
	box-shadow:rgba(0, 0, 0, 0.1) 2px 2px 8px;
	margin: 0 auto;
	text-align: center;
	width: 86%;
	color: #003399 !important;
}
.taxonomy-description p {	color: #003399 !important;}
.taxonomy-description p:last-child {
	margin-bottom: 0 !important;
}