@charset "UTF-8";@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;500;600&family=Noto+Sans+JP:wght@400;500;700&family=Shippori+Mincho:wght@500;600&display=swap');
*,*::before,*::after{box-sizing:border-box}
html,body,div,span,h1,h2,h3,h4,h5,h6,p,a,address,img,small,strong,dl,dt,dd,ol,ul,li,form,label,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,figure,figcaption,footer,header,main,nav,section,time,button{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}
ol,ul{list-style:none}
table{border-collapse:collapse;border-spacing:0}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;cursor:pointer}
html{font-size:10px}
body{font-family:"Noto Sans JP", sans-serif;font-weight:400;color:#222222;font-size:1.6rem;line-height:1.8;letter-spacing:0.03em;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff}
@media (max-width: 767px){body{font-size:1.5rem}}
body.is-menuOpen{overflow:hidden}
a{color:#12876d;transition:.2s}
a:link{text-decoration:none}
a:hover{color:#0d6553}
img{max-width:100%;height:auto;display:inline-block;vertical-align:middle}
strong{font-weight:700}
small{font-size:1.2rem}
*:focus-visible{outline:2px solid #12876d;outline-offset:3px}
.container{max-width:1146px;margin:0 auto;padding-left:40px;padding-right:40px}
@media (max-width: 991px){.container{padding-left:30px;padding-right:30px}}
@media (max-width: 767px){.container{padding-left:20px;padding-right:20px}}
.hidden{width:0;height:0;position:absolute;overflow:hidden;top:0;left:0}
@media (max-width: 767px){.hidden-xs{display:none !important}}
@media (min-width: 768px){.visible-xs{display:none !important}}
#header{position:relative;z-index:100;background:#fff}
#header .container{max-width:1400px;min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:16px 32px}
@media (max-width: 767px){#header .container{min-height:72px}}
#header .logo a{display:block}
#header .logo a:hover{opacity:.8}
#header .logo img{display:block;width:auto;height:60px}
@media (max-width: 1199px){#header .logo img{height:52px}}
@media (max-width: 767px){#header .logo img{height:40px}}
#header.top{position:absolute;top:20px;left:20px;right:20px;background:none}
@media (max-width: 767px){#header.top{top:10px;left:10px;right:10px}}
#header.top #gNav .navList a{color:#fff}
#header.top #gNav .navList a:hover,#header.top #gNav .navList a.active{border-bottom-color:#fff}
#gNav{display:flex;align-items:center;gap:8px 32px}
@media (max-width: 991px){#gNav{display:none}}
#gNav .navList{display:flex;gap:0 32px}
@media (max-width: 1199px){#gNav .navList{gap:0 20px}}
#gNav .navList a{display:inline-flex;align-items:center;min-height:44px;font-size:1.4rem;font-weight:500;color:#222222;border-bottom:2px solid transparent}
#gNav .navList a:hover,#gNav .navList a.active{color:#12876d;border-bottom-color:#12876d}
#gNav .navList a.active{font-weight:700}
.btnMember{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:0 20px 0 24px;border-radius:999px;background:#12876d;color:#fff !important;font-size:1.4rem;font-weight:700}
.btnMember::after{content:"";width:16px;height:16px;background:url("../img/common/icon-arrow-w.svg") no-repeat center / contain}
.btnMember:hover{background:#0d6553}
#menuIcon,#gNavSp{display:none}
@media (max-width: 991px){#menuIcon{position:fixed;top:14px;right:15px;display:block;width:56px;height:56px;border-radius:10px;background:#12876d;z-index:1002}}
@media (max-width: 991px){#menuIcon span{position:absolute;left:15px;display:block;width:26px;height:2px;background:#fff;transition:.3s}}
@media (max-width: 991px){#menuIcon span:nth-child(1){top:14px}}
@media (max-width: 991px){#menuIcon span:nth-child(2){top:22px}}
@media (max-width: 991px){#menuIcon span:nth-child(3){top:30px}}
@media (max-width: 991px){#menuIcon .label{position:absolute;left:0;right:0;bottom:7px;font-family:"Montserrat", sans-serif;font-style:normal;font-size:0.9rem;font-weight:600;letter-spacing:0.08em;line-height:1;color:#fff;text-align:center}}
@media (max-width: 991px){#menuIcon.active span:nth-child(1){top:22px;transform:rotate(45deg)}}
@media (max-width: 991px){#menuIcon.active span:nth-child(2){opacity:0}}
@media (max-width: 991px){#menuIcon.active span:nth-child(3){top:22px;transform:rotate(-45deg)}}
@media (max-width: 991px){#gNavSp{position:fixed;inset:0;display:block;padding:90px 20px 40px;background:#eaf4ef;z-index:1000;opacity:0;visibility:hidden;transform:translateY(-15px);transition:opacity .3s, visibility .3s, transform .3s;overflow-y:auto}}
@media (max-width: 991px){#gNavSp.active{opacity:1;visibility:visible;transform:translateY(0)}}
@media (max-width: 991px){#gNavSp .navList{margin-bottom:24px;padding:8px 24px;background:#fff;border-radius:12px}}
@media (max-width: 991px){#gNavSp .navList li + li{border-top:1px solid #e3e3e3}}
@media (max-width: 991px){#gNavSp .navList a{display:flex;align-items:center;justify-content:space-between;padding:16px 0;font-size:1.5rem;font-weight:500;color:#222222}}
@media (max-width: 991px){#gNavSp .navList a::after{content:"";width:16px;height:16px;background:url("../img/common/icon-arrow.svg") no-repeat center / contain}}
@media (max-width: 991px){#gNavSp .navList a.active{color:#12876d;font-weight:700}}
@media (max-width: 991px){#gNavSp .btnMember{width:100%;justify-content:center;min-height:52px}}
#localMainv{padding:0 20px}
@media (max-width: 767px){#localMainv{padding:0 10px}}
#localMainv .inner{position:relative;display:flex;align-items:center;min-height:280px;border-radius:16px;overflow:hidden;background:#eaf4ef url("../img/common/bg-localmain.png") no-repeat right center / cover}
@media (max-width: 767px){#localMainv .inner{min-height:180px;border-radius:12px}}
#localMainv .mainvTtl{width:100%;max-width:1146px;margin:0 auto;padding:0 40px}
@media (max-width: 767px){#localMainv .mainvTtl{padding:0 20px}}
#localMainv .mainvTtl .ja{margin-bottom:12px;font-size:1.4rem;font-weight:700;color:#12876d;letter-spacing:0.06em}
@media (max-width: 767px){#localMainv .mainvTtl .ja{margin-bottom:6px;font-size:1.3rem}}
#localMainv .mainvTtl .en{font-family:"Montserrat", sans-serif;font-weight:500;font-size:6.4rem;letter-spacing:0.03em;line-height:1.1}
@media (max-width: 991px){#localMainv .mainvTtl .en{font-size:5.0rem}}
@media (max-width: 767px){#localMainv .mainvTtl .en{font-size:3.6rem}}
.breadcrumb{padding-top:20px}
.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:1.2rem;color:#555555}
.breadcrumb li + li::before{content:"／";margin-right:8px;color:#9a9a9a}
.breadcrumb a{color:#555555;text-decoration:underline}
#bnr{padding:56px 0}
@media (max-width: 767px){#bnr{padding:40px 0}}
#bnr .bnrList{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:16px}
@media (max-width: 991px){#bnr .bnrList{grid-template-columns:repeat(2, minmax(0, 1fr))}}
#bnr .bnrList a{display:block;border:1px solid #e3e3e3;border-radius:8px;overflow:hidden}
#bnr .bnrList a:hover{opacity:.75}
#bnr .bnrList img{display:block;width:100%}
#footer{background:#f4f4f3}
#footer .container{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:32px;padding-top:56px;padding-bottom:48px}
@media (max-width: 767px){#footer .container{padding-top:40px;padding-bottom:32px}}
#footer .logo{margin-bottom:20px}
#footer .logo img{display:block;width:280px;height:auto}
@media (max-width: 767px){#footer .logo img{width:240px}}
#footer address{font-style:normal;font-size:1.3rem;line-height:1.9;color:#333333}
#footer .footRight{display:flex;flex-direction:column;align-items:flex-end;gap:20px}
@media (max-width: 767px){#footer .footRight{align-items:flex-start}}
#footer .footNav{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:1.3rem}
#footer .footNav a{color:#333333}
#footer .footNav a:hover{color:#12876d}
#footer .copyTxt{font-size:1.1rem;color:#555555}
.secTtl .ja{display:block;margin-bottom:8px;font-size:1.3rem;font-weight:700;color:#12876d;letter-spacing:0.05em}
.secTtl .en{font-family:"Montserrat", sans-serif;font-weight:500;font-size:4.0rem;letter-spacing:0.02em;line-height:1.2}
@media (max-width: 767px){.secTtl .en{font-size:3.0rem}}
.contTtl{margin-bottom:20px;padding-left:16px;border-left:4px solid #12876d;font-size:2.2rem;font-weight:700;line-height:1.5}
@media (max-width: 767px){.contTtl{font-size:1.9rem}}
.catch{font-family:"Shippori Mincho", serif;font-weight:500;font-size:4.4rem;line-height:1.5;letter-spacing:0.06em}
@media (max-width: 991px){.catch{font-size:3.6rem}}
@media (max-width: 767px){.catch{font-size:2.6rem}}
.section{padding-top:112px}
@media (max-width: 767px){.section{padding-top:72px}}
.section.last{padding-bottom:120px}
@media (max-width: 767px){.section.last{padding-bottom:80px}}
.section > .container > .secTtl{margin-bottom:48px}
@media (max-width: 767px){.section > .container > .secTtl{margin-bottom:32px}}
.colWrap{display:flex;flex-wrap:wrap;gap:40px 64px}
.colWrap .colTtl{flex:1 1 240px}
.colWrap .colTtl .btn{margin-top:40px}
.colWrap .colCont{flex:999 1 560px;min-width:0}
.read{font-size:1.6rem;line-height:2.1;color:#333333}
.photo img{display:block;width:100%;height:440px;object-fit:cover;border-radius:16px}
@media (max-width: 767px){.photo img{height:240px;border-radius:12px}}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-width:220px;min-height:52px;padding:0 24px;border-radius:999px;background:#12876d;color:#fff !important;font-size:1.4rem;font-weight:700}
.btn::after{content:"";flex-shrink:0;width:16px;height:16px;background:url("../img/common/icon-arrow-w.svg") no-repeat center / contain}
.btn:hover{background:#0d6553}
.btn.large{min-width:300px;min-height:60px;font-size:1.5rem}
.btn.download::after{background-image:url("../img/common/icon-download-w.svg")}
.btnLine{display:inline-flex;align-items:center;gap:12px;min-height:52px;padding:0 28px;border:1px solid #12876d;border-radius:999px;color:#12876d;font-size:1.4rem;font-weight:700}
.btnLine.back::before{content:"";width:16px;height:16px;background:url("../img/common/icon-arrow-back.svg") no-repeat center / contain}
.btnLine:hover{background:#eaf4ef}
.btnWrap{display:flex;justify-content:center;padding-top:64px}
.tag{display:inline-block;padding:2px 12px;border-radius:999px;background:#eaf4ef;font-size:1.2rem;font-weight:700;color:#12876d;line-height:1.8}
.tag.white{background:#fff}
.tag .sep{margin:0 8px;color:#9fc9b9}
.icoPdf{flex-shrink:0;padding:4px 8px;border-radius:4px;background:#c4412b;color:#fff;font-family:"Montserrat", sans-serif;font-size:1.1rem;font-weight:600;line-height:1.2}
.dataList{border-top:1px solid #e3e3e3}
.dataList > div{display:flex;flex-wrap:wrap;gap:8px 32px;padding:24px 0;border-bottom:1px solid #e3e3e3}
@media (max-width: 767px){.dataList > div{padding:18px 0}}
.dataList dt{flex:0 0 160px;font-size:1.4rem;font-weight:700;color:#12876d}
@media (max-width: 767px){.dataList dt{flex-basis:100%}}
.dataList dd{flex:1 1 300px;font-size:1.5rem;line-height:1.9}
.dataList dd ul{padding-left:1.2em;list-style:disc}
.newsList{border-top:1px solid #e3e3e3}
.newsList li{border-bottom:1px solid #e3e3e3}
.newsList a{display:flex;align-items:center;gap:24px;padding:28px 8px;color:#222222}
@media (max-width: 767px){.newsList a{padding:20px 0}}
.newsList a::after{content:"";flex-shrink:0;width:18px;height:18px;background:url("../img/common/icon-arrow.svg") no-repeat center / contain}
.newsList a:hover .ttl{color:#12876d}
.newsList .txtIn{flex:1;min-width:0}
.newsList .meta{display:flex;align-items:center;gap:16px;margin-bottom:8px}
.newsList time{font-family:"Montserrat", sans-serif;font-size:1.3rem;color:#555555}
.newsList .ttl{display:block;font-size:1.6rem;font-weight:500;line-height:1.7;transition:.2s}
.eventCard > a{display:flex;flex-wrap:wrap;border-radius:12px;overflow:hidden;background:#eef5f1;color:#222222}
.eventCard > a:hover .img img{transform:scale(1.05)}
.eventCard > a:hover .more{color:#12876d}
.eventCard .img{position:relative;flex:1 1 360px;min-height:240px;overflow:hidden;background:#dbe7e1}
.eventCard .img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.eventCard .txtIn{flex:999 1 480px;min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:40px 48px}
@media (max-width: 767px){.eventCard .txtIn{padding:28px 24px}}
.eventCard .ttl{margin:20px 0 12px;font-size:2.0rem;font-weight:700;line-height:1.6}
@media (max-width: 767px){.eventCard .ttl{font-size:1.7rem}}
.eventCard .info{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:28px;font-size:1.4rem;color:#333333}
.eventCard .info li{display:inline-flex;align-items:center;gap:8px}
.eventCard .info li::before{content:"";width:16px;height:16px;background:no-repeat center / contain}
.eventCard .info li.date::before{background-image:url("../img/common/icon-calendar.svg")}
.eventCard .info li.place::before{background-image:url("../img/common/icon-pin.svg")}
.eventCard .more{align-self:stretch;display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:24px;border-top:1px solid #cfe2d8;font-size:1.4rem;font-weight:500;transition:.2s}
.eventCard .more::after{content:"";width:16px;height:16px;background:url("../img/common/icon-arrow.svg") no-repeat center / contain}
.eventList{display:flex;flex-direction:column;gap:24px}
.tabList{display:flex;border-bottom:1px solid #e3e3e3;margin-bottom:48px}
.tabList a{display:flex;align-items:center;justify-content:center;min-width:200px;min-height:60px;padding:0 24px;margin-bottom:-1px;border-bottom:3px solid transparent;font-size:1.6rem;font-weight:500;color:#555555}
@media (max-width: 767px){.tabList a{flex:1;min-width:0;padding:0 8px;font-size:1.4rem}}
.tabList a.active{border-bottom-color:#12876d;font-weight:700;color:#12876d}
.pager{display:flex;justify-content:center;gap:8px;padding-top:64px}
.pager a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #d5d5d5;border-radius:50%;font-family:"Montserrat", sans-serif;font-size:1.4rem;font-weight:600;color:#222222}
.pager a:hover{border-color:#12876d;color:#12876d}
.pager a.current{border-color:#12876d;background:#12876d;color:#fff}
.pager a.next{font-size:0}
.pager a.next::after{content:"";width:16px;height:16px;background:url("../img/common/icon-arrow.svg") no-repeat center / contain}
.entryNav{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));align-items:center;gap:16px;margin-top:80px;padding:32px 0;border-top:1px solid #e3e3e3;border-bottom:1px solid #e3e3e3}
@media (max-width: 767px){.entryNav{grid-template-columns:repeat(2, minmax(0, 1fr))}}
@media (max-width: 767px){.entryNav .btn{grid-column:1 / -1;grid-row:2}}
.entryNav .prev,.entryNav .next{display:flex;align-items:center;gap:8px;min-height:44px;font-size:1.4rem;color:#222222}
.entryNav .prev:hover,.entryNav .next:hover{color:#12876d}
.entryNav .prev::before{content:"";width:16px;height:16px;background:url("../img/common/icon-arrow-back.svg") no-repeat center / contain}
.entryNav .next{justify-self:end}
.entryNav .next::after{content:"";width:16px;height:16px;background:url("../img/common/icon-arrow.svg") no-repeat center / contain}
.entryNav .btn{justify-self:center}
.entryHead{padding-bottom:32px;border-bottom:1px solid #e3e3e3}
.entryHead .meta{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.entryHead time{font-family:"Montserrat", sans-serif;font-size:1.4rem;color:#555555}
.entryHead .ttl{font-size:3.0rem;font-weight:700;line-height:1.6}
@media (max-width: 767px){.entryHead .ttl{font-size:2.2rem}}
.entryBody{padding-top:48px;font-size:1.6rem;line-height:2.1;color:#333333}
.entryBody p{margin-bottom:16px}
.entryBody ul{margin-bottom:16px;padding-left:1.6em;list-style:disc}
.entryBody ol{margin-bottom:16px;padding-left:1.6em;list-style:decimal}
.entryBody h2{margin:48px 0 20px;padding-left:16px;border-left:4px solid #12876d;font-size:2.2rem;font-weight:700;line-height:1.5;color:#222222}
.entryBody h3{margin:32px 0 16px;font-size:1.8rem;font-weight:700;color:#222222}
.entryBody img{border-radius:12px}
.entryBody a{text-decoration:underline}
.fileLink{display:flex;align-items:center;gap:16px;padding:20px 24px;border:1px solid #e3e3e3;border-radius:8px;color:#222222}
.fileLink::after{content:"";flex-shrink:0;width:18px;height:18px;background:url("../img/common/icon-download.svg") no-repeat center / contain}
.fileLink .name{flex:1;font-size:1.5rem;font-weight:500}
.fileLink .size{font-size:1.3rem;color:#555555}
.fileLink:hover{border-color:#12876d}
.linkCard{display:flex;flex-direction:column;height:100%;padding:48px;border-radius:16px;background:#fff;color:#222222 !important}
@media (max-width: 767px){.linkCard{padding:32px 24px}}
.linkCard .icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:28px;border-radius:10px;background:#eaf4ef}
.linkCard .icon img{width:24px;height:24px}
.linkCard .en{font-family:"Montserrat", sans-serif;font-size:1.2rem;font-weight:600;letter-spacing:0.08em;color:#12876d}
.linkCard .ttl{margin:6px 0 12px;font-size:2.2rem;font-weight:700}
.linkCard .txt{margin-bottom:28px;font-size:1.4rem;line-height:1.8;color:#333333}
.linkCard .more{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:20px;border-top:1px solid #e3e3e3;font-size:1.4rem;font-weight:500}
.linkCard .more::after{content:"";width:16px;height:16px;background:url("../img/common/icon-arrow.svg") no-repeat center / contain}
.linkCard:hover .more{color:#12876d}
.noPost{padding:32px 0;font-size:1.5rem;color:#666666}
.eventCard .img[data-type="flyer"] img{object-position:center top}
