@charset "utf-8";
/* CSS Document */
*{box-sizing: border-box;}
html{scroll-behavior: smooth;box-sizing: border-box;}
body{padding: 0;margin: 0;font-family: 'Noto Serif JP', sans-serif;line-height: 1.8em; font-size: 18px;overflow-x: hidden;background-image: url("../common/bg_image.jpg");background-size: auto;  min-height: 100vh; display: flex; flex-direction: column;color: #444;}
.wrap{width: 100%;min-height: 100vh;}
.container{max-width: 1480px;width: 100%; margin: auto;font-size: 1rem;flex: 1;}
.page, .cate{max-width: 1480px;width: 100%;padding: clamp(2rem, 1.429rem + 2.86vw, 5rem) 0; margin: auto;font-size: 1rem;flex: 1;}
.page h2, .single h2, .cate h2{text-align: center;font-size: clamp(1.2rem, 0.523rem + 3.38vw, 2.3rem);padding: 0;padding:0 0 .5em; margin-bottom: 2em; position: relative;}
.page h2:after, .single h2:after, .cate h2:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
  content: '';
  border-radius: 1px;
  background-image: -webkit-gradient(linear, right top, left top, from(#6DAB6B), to(#107C00));
  background-image: -webkit-linear-gradient(right, #6DAB6B 0%, #107C00 100%);
  background-image: linear-gradient(to left, #6DAB6B 0%, #107C00 100%);
}
.page h2:first-letter, .single h2:first-letter, .cate h2:first-letter{font-size: clamp(2.3rem, 2.11rem + 0.95vw, 3.3rem);color: #6DAB6B;}

header{width: 100%;margin: 0;padding: 0;}
header .contents{width: 100%;margin: 0 auto;padding: 1em;display: flex;justify-content: space-between; flex: 1;}
header .contents .disc{display: flex;flex-direction: column;}
header .contents .disc dl{display: flex;line-height: 1.1;padding: 0;margin: .5em 0;}
header .contents .disc dl dt{padding: .3em .5em 0; height: 1.8em; background-color: #6DAB6B;color: #fff;font-size: clamp(0.8rem, 0.772rem + 0.14vw, 0.9rem);border-radius: 5px; margin: 0;vertical-align: middle;}
header .contents .disc dl dd{padding: 0 0 0 1em;margin: 0;line-height: 1.2;font-size: clamp(0.7rem, 0.645rem + 0.28vw, 0.9rem);}
header h1{padding: 0;margin: 0;font-size: clamp(1.4rem, 1.152rem + 1.24vw, 2.3rem);line-height: 1.6;font-weight: 600;}
header h1 span{display: block;font-size: .8rem;}
header .contents .contact{padding: 0;margin: 0;text-align: center;font-size: clamp(0.7rem, 0.645rem + 0.28vw, 0.9rem);line-height: 1.3;}
header .contents .contact span{display: block;font-size: clamp(1.8rem, 1.662rem + 0.69vw, 2.3rem);font-weight: normal;color: #6DAB6B;}
header .contents .contact span a{display: block;font-size: clamp(1.8rem, 1.662rem + 0.69vw, 2.3rem);font-weight: normal;color: #6DAB6B;}
header .contents .contact span a:hover{display: block;font-size: clamp(1.8rem, 1.662rem + 0.69vw, 2.3rem);font-weight: normal;color: rgba(109,171,107,.70);}
header .contents .contact .btn {margin: 10px auto 5px;}
header .contents .contact .btn a{padding:.1em 1em .2em;background-color: #6DAB6B;color: #fff;border-radius: 5px;}
header .contents .contact .btn a:hover{padding:.1em 1em .2em;background-color: rgba(109,171,107,.6);color: #fff;border-radius: 5px;}
header .sphone{display: none;}
section{margin: 0;padding: 0;}
a{text-decoration: none;color: #444;}
a:hover{color: rgba(68,68,68,.6);}
a img:hover{opacity: .6;}
@media screen and (max-width: 840px) {
header h1{padding: 0;margin: 0;font-size: clamp(1.2rem, 0.523rem + 3.38vw, 2.3rem);line-height: 1.6;font-weight: 600;}
header h1 span{display: block;font-size: clamp(0.6rem, 0.477rem + 0.62vw, 0.8rem);}
header .contents .disc{display: none;}
header .contents .contact{display: none;}
header .sphone { display: block; }
}

nav{width: 100%;padding: 0;margin: 0;}
nav ul{display: flex;justify-content: space-between;padding: 0;}
nav ul li{flex:1;text-align: center;list-style: none;padding: 0;line-height: 1.2;}
nav ul li a{width: 100%; text-align: center;padding: .5em clamp(0.1rem, -0.01rem + 0.55vw, 0.5rem);font-size: clamp(0.7rem, 0.617rem + 0.41vw, 1rem);}
nav ul li a:hover{color: #107C00;}
nav ul li a::before {  content: '\f35a';  font-family: "Font Awesome 6 Free";  font-weight: 900;  color: transparent;   /* 最初は透明 */  margin-right: .3em;   /* アイコンと文字の間隔 */}
nav ul li a:hover::before{/*content: '\f35a';font-family: "Font Awesome 6 Free";font-weight: 400;*/color: #107C00;}
.mainimage{max-width: 1480px;width: 100%; margin: auto;}
.mainimage img{width: 100%; margin: 0;padding: 0;}
@media screen and (max-width: 840px) {
nav{display: none;}
}

section.ceremony > .container > div{padding: 1em;border: 5px double #999;max-width: 1200px;width: 95%;margin: 3em auto;}
section.ceremony > .container > div > h2{width: 90%;padding:.5em;margin: 0 auto;text-align: center;font-size: 2rem;border-bottom: 1px solid #999;}
section.ceremony > .container > div > div > dl{width: 90%; padding:1em 0 0;margin: 0 auto;display: flex;justify-content: flex-start;}
section.ceremony > .container > div > div > dl > dt{width: fit-content;padding: .5em;font-size: clamp(1.2rem, 1.117rem + 0.41vw, 1.5rem);background-color: rgba(16,124,0,.2);}
section.ceremony > .container > div > div > dl > dt::before{content: "\f073";font-family: "Font Awesome 6 Free";font-weight: 900;padding-right: .5em;}
section.ceremony > .container > div > div > dl > dd{padding: .5em .5em .5em 1em; font-size: clamp(1.2rem, 1.117rem + 0.41vw, 1.5rem);}
section.ceremony > .container > div > ul{width: 90%; padding:1em 0;margin: 0 auto;}
section.ceremony > .container > div > ul > li{list-style: none;font-size: 1.2rem;}
section.ceremony > .container > div > ul > li > a{}
section.ceremony > .container > div > ul > li > a::before{content: "\f152";font-family: "Font Awesome 6 Free";font-weight: 900;color: #107C00;padding-right: .5em;}
@media screen and (max-width: 840px) {
section.ceremony > .container > div > h2{width: 100%;font-size: clamp(1.5rem, 1.315rem + 0.92vw, 1.8rem);}
section.ceremony > .container > div > div > dl{width: 100%; padding:1em 0 0;margin: 0 auto;display: flex;flex-direction: column; justify-content: flex-start;}
section.ceremony > .container > div > div > dl > dt{width: 100%;padding: .5em;font-size: clamp(1.2rem, 1.117rem + 0.41vw, 1.5rem);background-color: rgba(16,124,0,.2);}
section.ceremony > .container > div > div > dl > dd{padding: .5em;margin: 0;}
}

section.about > .container{width: clamp(17.5rem, 6.548rem + 54.76vw, 75rem);padding:.5em;margin: clamp(3rem, 2.429rem + 2.86vw, 6rem) auto;}
section.about > .container > h2{padding:.5em;margin: 0 auto;text-align: center;font-size: clamp(1.5rem, 0.885rem + 3.08vw, 2.5rem);font-weight: bold;color: #6DAB6B;line-height: 1.5em;}
section.about > .container > h2 > span{font-size: clamp(1.3rem, 1.205rem + 0.48vw, 1.8rem);}
section.about > .container > div{padding: 1em;width: 100%;margin: auto;text-align: center;font-size: clamp(1rem, 0.943rem + 0.29vw, 1.3rem);line-height: 1.8;}
section.about > .container > .button{margin: auto;}
section.about > .container > .button a{background-color:#6DAB6B;border-radius: 3px;color: #fff;font-size: 1rem; display: block;width: fit-content;padding: .3em 1em;margin: auto;}
section.about > .container > .button a:hover{background-color:rgba(109,171,107,.70);border-radius: 3px;color: #fff;font-size: 1rem; display: block;width: fit-content;padding: .3em 1em;margin: auto;}
section.about > .container > .button a::before{content: '\f360';  font-family: "Font Awesome 6 Free";  font-weight: 900;color: #fff;margin-right: .5em;}
@media screen and (max-width: 840px) {
section.about > .container > h2 > span{display: block;}
section.about > .container > div{padding: clamp(0rem, -0.615rem + 3.08vw, 1rem);width: 100%;margin: auto auto 1em;text-align: center;font-size: clamp(1rem, 0.943rem + 0.29vw, 1.3rem);line-height: clamp(1.6, 1.477 + 0.62vw, 1.8);}
}

section.info > .container{width: clamp(17.5rem, 6.548rem + 54.76vw, 75rem);padding:.5em;margin: clamp(3rem, 2.429rem + 2.86vw, 6rem) auto;}
section.info > .container > h2{margin: 0 auto;text-align: center;font-size: clamp(1.5rem, 0.885rem + 3.08vw, 2.5rem);}
section.info > .container > div > div > h3{margin: 0 auto;padding: 0; font-size: clamp(1.2rem, 1.181rem + 0.1vw, 1.3rem);font-weight: normal;line-height: 1.5;}
section.info > .container > div{display: flex; justify-content: space-between;padding: 0;width:100%;margin: clamp(2rem, 1.238rem + 3.81vw, 6rem) auto;}
section.info > .container > div > div{width: 30%;text-align: center;}
section.info > .container > div > div > img{width: 100%;object-fit: cover;height: auto;aspect-ratio: 4 / 3;margin-bottom: .5em;}
section.info > .container > div > div > span{font-size: clamp(2rem, 1.81rem + 0.95vw, 2.8rem);color: #107C00;font-weight: bolder;font-style: italic;}
section.info > .container > div > div > p{width: 100%;text-align: left;padding: 1em;background-color: #f7f7ca;line-height: 1.6;}
section.info > .container > div > div > a::before{content: '\f360';  font-family: "Font Awesome 6 Free";  font-weight: 900;color: #6DAB6B;margin-right: .5em;}
@media screen and (max-width: 840px) {
section.info > .container > div{display: flex; flex-direction: column; justify-content: space-between;padding: 0;width:100%;margin: clamp(2rem, 1.238rem + 3.81vw, 6rem) auto;}
section.info > .container > div > div{width: 100%;text-align: center;margin-bottom:2em;padding-bottom: 2em; border-bottom: 1px dashed #ccc;}
}

section.greeting > .container{width: clamp(17.5rem, 6.548rem + 54.76vw, 75rem);margin: clamp(3rem, 2.429rem + 2.86vw, 6rem) auto;}
section.greeting > .container > h2{margin: 0 auto;text-align: center;font-size: clamp(1.5rem, 1.405rem + 0.48vw, 2rem);}
section.greeting > .container > div{display: flex; justify-content: space-between;padding: clamp(2rem, 1.238rem + 3.81vw, 6rem) 0;width: 100%;}
section.greeting > .container > div > img{width: 400px; object-fit: cover;height: auto;aspect-ratio: 4 / 3;margin-bottom: .5em;}
section.greeting > .container > div > div{width: 50%;text-align: left;font-size: 1.2rem;line-height: 1.8;}
section.greeting > .container > div > div > p{width: 100%;text-align: right;}
section.greeting > .container > div a::before{content: '\f360';  font-family: "Font Awesome 6 Free";  font-weight: 900;color: #6DAB6B;margin-right: .5em;}
@media screen and (max-width: 840px) {
section.greeting > .container > div{display: flex;flex-direction: column; justify-content: space-between;padding: clamp(2rem, 1.238rem + 3.81vw, 6rem) 0;width: 100%;}
section.greeting > .container > div > img{width: clamp(17.5rem, 12.885rem + 23.08vw, 25rem); object-fit: cover;height: auto;aspect-ratio: 4 / 3;margin: auto auto 1em;}
section.greeting > .container > div > div{width: 100%;text-align: left;font-size: 1.2rem;line-height: 1.8;}
}

section.rece > .container{width: clamp(17.5rem, 6.548rem + 54.76vw, 75rem);margin: clamp(3rem, 2.429rem + 2.86vw, 6rem) auto;}
section.rece > .container > h2{margin: 0 auto;text-align: center;font-size: clamp(1.5rem, 1.405rem + 0.48vw, 2rem);}
section.rece > .container > div{display: flex; justify-content: space-between;padding: 0;width:100%;margin: clamp(2rem, 1.238rem + 3.81vw, 6rem) auto;flex-flow: wrap;}
section.rece > .container > div > div{width: 45%;text-align: center;padding: 0 0 6em;}
section.rece > .container > div > div > h3{margin: 0 auto;padding: 0 0 .5em; font-size: clamp(1.3rem, 1.262rem + 0.19vw, 1.5rem);line-height: 1.5;text-align: center;border-bottom: 2px solid #6DAB6B;}
section.rece > .container > div > div > img{width: 100%;object-fit: cover;height: auto;aspect-ratio: 4 / 3;margin-bottom: .5em;}
section.rece > .container > div > div > p{width: 100%;text-align: left;padding: 0;line-height: 1.6;}
section.rece > .container > div > div > a{display: block;margin: auto;width: fit-content;text-align: center;font-size: 1rem;padding: .3em 1em;background-color: #6DAB6B;color: #fff;border-radius: 3px;}
section.rece > .container > div > div > a:hover{display: block;margin: auto;width: fit-content;text-align: center;font-size: 1rem;padding: .3em 1em;background-color:rgba(109,171,107,.70);color: #fff;border-radius: 3px;}
section.rece > .container > div > div > a::before{content: '\f360';font-family: "Font Awesome 6 Free";font-weight: 900;color: #fff;margin-right: .5em;}
@media screen and (max-width: 840px) {
section.rece > .container > div > div{width: 100%;text-align: center;padding: 0 0 3em;margin-bottom: 3em;border-bottom: 1px dashed #ccc;}
}

section.images > .container{width: clamp(17.5rem, 6.548rem + 54.76vw, 75rem);margin: clamp(3rem, 2.429rem + 2.86vw, 6rem) auto;}
section.images > .container > h2{margin: 0 auto;text-align: center;font-size: clamp(1.5rem, 1.405rem + 0.48vw, 2rem);}
section.images > .container > div{display: flex; justify-content: space-between;padding: 0;width:100%;margin: clamp(2rem, 1.238rem + 3.81vw, 6rem) auto 1em;}
section.images > .container > div > div{display: flex;flex-direction: column; padding: 0;width:18%;}
section.images > .container > div > div img{width: 100%;object-fit: cover;height: auto;aspect-ratio: 4 / 3;margin-bottom: .5em;}
section.images > .container > div > div > h3{margin: 0;padding: 0; font-size: clamp(1rem, 0.981rem + 0.1vw, 1.1rem);font-weight: normal;line-height: 1.5;text-align: center;}
section.images > .container > p{text-align: right;}
section.images > .container > p a::before{content: '\f360';font-family: "Font Awesome 6 Free";font-weight: 900;color: #6DAB6B;margin-right: .5em;}
@media screen and (max-width: 840px) {
section.images > .container > div{flex-wrap: wrap;}
section.images > .container > div > div{display: flex;flex-direction: column; padding: 0;width:45%;}
}
@media screen and (max-width: 420px) {
section.images > .container > div > div{width:100%;margin-bottom: 2em;}
section.images > .container > div > div img{margin-bottom: .2em;}
}

section.event > .container{width: clamp(17.5rem, 6.548rem + 54.76vw, 75rem);margin: clamp(3rem, 2.429rem + 2.86vw, 6rem) auto;}
section.event > .container > h2{margin: 0 auto;text-align: center;font-size: clamp(1.5rem, 1.405rem + 0.48vw, 2rem);}
section.event > .container > div > h3{margin: 1em auto;text-align: center;font-size: 1.5rem;}
section.event > .container > div{display: flex;flex-direction: column; justify-content: space-between;padding: 0;width:100%;margin: clamp(2rem, 1.238rem + 3.81vw, 6rem) auto;}
section.event > .container > div > dl{display: flex;justify-content: flex-start;width:100%;border-top: dotted 1px #ccc;padding: 1em;margin: 0;}
section.event > .container > div > dl:last-child{display: flex;justify-content: flex-start;width:100%;border-top: dotted 1px #ccc;border-bottom: dotted 1px #ccc;}
section.event > .container > div > dl dt{width: 25%;font-weight: bold;line-height: 1.5;}
section.event > .container > div > dl dt span{display: block;font-size: .9rem;font-weight: normal;}
section.event > .container > div > dl dd{width: 75%;}
section.event > .container > div > dl dt::before{content: "\f152";font-family: "Font Awesome 6 Free";font-weight: 900;color: #107C00;padding-right: .5em;}
@media screen and (max-width: 840px) {
section.event > .container > div > dl{display: flex;flex-direction: column; justify-content: flex-start;width:100%;border-top: solid 1px #aaa;padding: 1em 0;margin: 0;}
section.event > .container > div > dl dt{width: 100%;font-weight: bold;line-height: 1.5;padding-bottom: .5em;margin-bottom: .5em; border-bottom: 1px dashed #ccc;}
section.event > .container > div > dl dd{width: 100%;margin: auto 0;line-height: 1.5;}
}

section.news > .container{width: clamp(17.5rem, 6.548rem + 54.76vw, 75rem);margin: clamp(3rem, 2.429rem + 2.86vw, 6rem) auto;}
section.news > .container > h2{margin: 0 auto;text-align: center;font-size: clamp(1.5rem, 1.405rem + 0.48vw, 2rem);}
section.news > .container > div{display: flex;flex-direction: column; justify-content: flex-start;padding: 0;width:100%;margin: clamp(2rem, 1.238rem + 3.81vw, 6rem) auto;}
section.news > .container > div > dl{display: flex;justify-content: flex-start;width:100%;border-top: dotted 1px #ccc;padding: 1em;margin: 0;}
section.news > .container > div > dl:last-child{display: flex;justify-content: flex-start;width:100%;border-top: dotted 1px #ccc;border-bottom: dotted 1px #ccc;}
section.news > .container > p{text-align: right;}
section.news > .container > p > a{}
section.news > .container > p > a::before{content: '\f360';font-family: "Font Awesome 6 Free";font-weight: 900;color: #6DAB6B;margin-right: .5em;}
@media screen and (max-width: 840px) {
section.news > .container > div > dl{display: flex;flex-direction: column; justify-content: flex-start;width:100%;border-top: solid 1px #aaa;padding: 1em 0;margin: 0;}
section.news > .container > div > dl:last-child{display: flex;justify-content: flex-start;width:100%;border-top: solid 1px #aaa;border-bottom: solid 1px #aaa;}
section.news > .container > div > dl dt{width:100%;border-bottom: dotted 1px #ccc;padding-bottom: .5em;margin-bottom: .5em;}
section.news > .container > div > dl dd{width:100%;margin: auto 0;}
}

section.gmap > div{padding: 0;width: 100%;margin: 3em auto;}
section.gmap > div > iframe{width: 100%;height: clamp(18.75rem, 17.56rem + 5.95vw, 25rem);}


.page > .contents{width: clamp(47.5rem, 27.586rem + 37.93vw, 75rem);margin: auto;line-height: 1.8;font-size: clamp(1rem, 0.962rem + 0.19vw, 1.2rem);}
.page > .contents h3{text-align: center; font-size: clamp(1.2rem, 1.124rem + 0.38vw, 1.6rem);margin: clamp(1.5em, 1.214em + 1.43vw, 3em) auto;padding: .5em;border-bottom: 2px solid #6DAB6B;}
.page > .contact .telbox{display: flex;justify-content: space-between;padding: 2em 0;flex-direction: row;}
.page > .contact .telbox > div{width: 50%;}
.page > .contact .telbox > div > img{object-fit: contain;}
.page > .contact .telbox .phone a{font-size: 2.5rem;font-weight: bold;color: #6DAB6B; }
.page > .contact .telbox table{width: 100%;}
.page > .contact .telbox table th, .page > .contact table td{padding: 1em;text-align: left;font-size: clamp(1rem, 0.962rem + 0.19vw, 1.2rem);}
.page > .contact .mailform{padding: 0 0 2em;width: clamp(17.5rem, 11.31rem + 30.95vw, 50rem);margin: auto;}
.page > .contact .mailform input{padding: .8em;width: 100%;}
.page > .contact .mailform textarea{padding: .8em;width: 100%;}
.page > .contact .mailform table{width: 100%;margin: auto;}
.page > .contact .mailform table th{width: fit-content;}
.page > .contact .mailform table th p{text-align: left;display: flex;align-items: center;}
.page > .contact .mailform table th p span{font-size: .8rem;color: rgba(219,0,3,1.00);margin-left: 1em;}
.page > .contact .mailform .button{width: 200px;margin: auto;}
.page > .contact .mailform .button input{width: 100%;background-color: #6DAB6B;border: 1px solid #ccc;color: #fff;font-size: 1rem;}
.page > .contact .mailform .button input:hover{cursor: pointer;background-color: rgba(109,171,107,.7);}
@media screen and (max-width: 840px) {
.page > .contents{width: clamp(18.125rem, 0.048rem + 90.38vw, 47.5rem);}
.page > .contact .telbox{display: flex;justify-content: space-between;padding: 2em 0;flex-direction: column;}
.page > .contact .telbox > div{width: 100%;padding-bottom: 1em;}
.page > .contact .telbox > div p span{display: block;}
.page > .contact .telbox .phone{text-align: center;}
.page > .contact .telbox .phone a{font-size: 2.5rem;font-weight: bold;color: #107C00;}
.page > .contact .telbox .phone a::before{content: "\f098";font-family: "Font Awesome 6 Free";font-weight: 900;padding-right: .5em; }
.page > .contact .telbox table{margin-bottom: 2em;}
.page > .contact .telbox table th{display: block;padding: .2em .5em; background-color: #6DAB6B;color: #fff;}
.page > .contact .telbox table td{display: block;padding: 0 1em;}
.page > .contact .mailform table th, .page > .contact .mailform table td{display: block;width: 100%;}
.page > .contact .mailform p{padding: 0;margin: 0;}
}

.single .contents{width: clamp(47.5rem, 27.586rem + 37.93vw, 75rem);margin: auto;line-height: 1.8;font-size: clamp(1rem, 0.962rem + 0.19vw, 1.2rem);}
/*.single .contents main{display: flex;justify-content: space-between;flex-wrap: wrap;}*/
.single .contents main .head{flex: 0 0 100%;white-space: nowrap;}
.single .contents main .head h2{width: 100%;}
.single .contents main > div{display: flex;justify-content: space-between;flex-wrap: wrap;}
.single .contents main > div .sidearea{flex: 0 0 20%;box-sizing: border-box;}
.single .contents main .textarea{flex: 0 0 70%;box-sizing: border-box;min-width: 0;}
.single .contents main .textarea h3{border-bottom: 1px solid #444;padding-bottom: .5em;}
.single .contents main .textarea article{min-height:30vh}
.single .contents main .textarea a{display: block; width: 80%;margin: 1em auto;}
.single .contents main .textarea a img{width: 100%;height: auto;object-fit: cover;}
.single .contents main .textarea .date{font-size:clamp(0.8rem, 0.677rem + 0.62vw, 1rem); text-align: right;}
.single .contents main .textarea .backcategory a{font-size: 1rem;width: fit-content;margin: 0 0 0 auto;}
.single .contents main .textarea .backcategory a::before{content: '\f360';  font-family: "Font Awesome 6 Free";  font-weight: 900;color: #6DAB6B;margin-right: .5em;}
@media screen and (max-width: 840px) {
.single .contents{width: clamp(18.125rem, 0.048rem + 90.38vw, 47.5rem);}
/*.single .contents main{display: flex;justify-content: space-between;flex-wrap: wrap;flex-direction: column-reverse;}*/
.single .contents main > div{display: flex;justify-content: space-between;flex-wrap: wrap;flex-direction: column-reverse;}
.single .contents main .sidearea{flex: 0 0 100%;box-sizing: border-box;}
.single .contents main .textarea{flex: 0 0 100%;box-sizing: border-box;min-width: 0;}
.single .contents main .textarea a{display: block; width: 90%;margin: 1em auto;}
}

.cate .contents{width: clamp(47.5rem, 27.586rem + 37.93vw, 75rem);margin: auto;line-height: 1.8;font-size: clamp(1rem, 0.962rem + 0.19vw, 1.2rem);}
/*.cate .contents main{display: flex;justify-content: space-between;flex-wrap: wrap;}*/
.cate .contents main > div{display: flex;justify-content: space-between;flex-wrap: wrap;}
.cate .contents main .head{flex: 0 0 100%;white-space: nowrap;}
.cate .contents main .head h2{width: 100%;}
.cate .contents main > .sidearea{flex: 0 0 20%;box-sizing: border-box;}
.cate .contents main .textarea{flex: 0 0 70%;box-sizing: border-box;min-width: 0;}
.cate .contents main .textarea .cateBox{margin: 2em 0;border-bottom: 1px dashed #ccc;}
.cate .contents main .textarea .cateBox h3{font-size: clamp(1.1rem, 1.043rem + 0.29vw, 1.4rem);margin: 0;padding: 0;}
.cate .contents main .textarea .cateBox .date{display: block;font-size: clamp(0.8rem, 0.762rem + 0.19vw, 1rem);text-align: right;}
.cate .contents main .textarea .cateBox dl, .cate .contents main .textarea .cateBox dl dd{margin: 0;padding: 0;font-size: 1rem;}
.cate .contents main .textarea .cateBox .next{padding: 0; text-align: right;}
@media screen and (max-width: 840px) {
.cate .contents{width: clamp(18.125rem, 0.048rem + 90.38vw, 47.5rem);}
/*.cate .contents main{display: flex;justify-content: space-between;flex-wrap: wrap;flex-direction: column-reverse;}*/
.cate .contents main > div{display: flex;justify-content: space-between;flex-wrap: wrap;flex-direction: column-reverse;}
.cate .contents main.sidearea{flex: 0 0 100%;box-sizing: border-box;}
.cate .contents main.textarea{flex: 0 0 100%;box-sizing: border-box;min-width: 0;}
}

.searchbox{font-size:1rem;}
.searchbox form > div{display: flex;justify-content: space-between;}
.searchbox input{padding: .3em; font-size:1rem;}
.searchbox input.btn{padding: .3em; font-size:1rem;cursor: pointer;}


footer{width: 100%;}
footer .container{padding: 2em 0;display: flex;justify-content: space-around;flex-wrap: wrap;}
footer .container > div{width: 65%;}
footer .container > div > h2{font-size: 2rem;padding: 0 0 1em;margin: 0;}
footer .container > div > h2 > span{display: block;font-size: .8rem;}
footer .container > .contact{width: 25%;text-align: center;}
footer .container > .contact > .tel{font-size: 2.5rem;font-weight: 700;color: #6DAB6B;}
footer .container > .contact > .tel a{font-size: 2.5rem;font-weight: 700;color: #6DAB6B;}
footer .container > .contact > .tel a:hover{font-size: 2.5rem;font-weight: 700;color: rgba(109,171,107,.70);}
footer .container > .contact > .tel > span{font-size: 1rem;font-weight: normal;color: #333;}
footer .container > .contact > .time{font-size: .9rem;line-height: 1.5;padding: 1em 0;}
footer .container > .contact > .mail{font-size: 1rem;}
footer .container > .contact > .mail a{padding: .5em 1em;background-color: #6DAB6B;color: #fff;border-radius: 5px;}
footer .container > .contact > .mail a:hover{padding: .5em 1em;background-color: rgba(109,171,107,.6);color: #fff;border-radius: 5px;}
footer .copyright{width: 100%;background-color: #D4D4D4;}
footer .copyright .container {display: flex;justify-content: space-between;align-items: center;padding: 0;}
footer .copyright > .container > div{width:fit-content;font-size: .8rem;}
footer .copyright ul{display: flex;justify-content: space-between;}
footer .copyright ul li{list-style: none;}
footer .copyright ul li a{padding: .5em;font-size: .8rem;}
@media screen and (max-width: 840px) {
footer .container{padding: clamp(1rem, 0.724rem + 1.38vw, 2rem) 0;}
footer .container > div{width: 90%;margin: auto;}
footer .container > div > h2{font-size: 1.4rem;padding: 0 0 1em;margin: 0;}
footer .container > div > h2 > span{display: block;font-size: .8rem;}
footer .container > div > div{display: block;font-size: .8rem;line-height: 1.4;}
footer .container > .contact{display: none;}
footer .copyright .container {display: flex;justify-content: space-around;align-items: center;padding: 0;}
footer .copyright > .container > div{width:fit-content;font-size: .8rem;}
footer .copyright ul{display: none;}
}
	
/* feature */
.feature > main > article > p{text-align: center;}
.feature section{padding: clamp(0rem, -0.762rem + 3.81vw, 4rem);}
.feature section h4{font-size: clamp(0.9rem, 0.786rem + 0.57vw, 1.5rem);padding: .5em;border-bottom: 2px solid #6DAB6B;}
.feature section h4::first-letter{font-size: clamp(1.2rem, 1.086rem + 0.57vw, 1.8rem);color:#6DAB6B;font-weight: bold;margin-right: .1em;}
.feature section > div{display: flex;flex-direction: row-reverse; justify-content: space-between;}
.feature section div img{width: 400px;object-fit: contain;height: auto;}
.feature section > div > div{padding-right: 2em;}
.feature .linkarea{text-align: center;}
.feature .linkarea a{}
.feature .linkarea a::before{content: '\f360';  font-family: "Font Awesome 6 Free";  font-weight: 900;color: #6DAB6B;margin-right: .5em;}
@media screen and (max-width: 840px) {
.feature section > div{display: flex;flex-direction: column;justify-content: center;}
.feature section div img{width: 90%;object-fit: contain;height: auto;margin: auto;}
.feature section > div > div{padding-right: 0;}
}

.faq{}
.faq > main > article > p{text-align: center;}
.faq > main > article > h3{font-size: clamp(1.2rem, 1.124rem + 0.38vw, 1.6rem);margin: clamp(1.5em, 1.214em + 1.43vw, 3em) auto;padding: .5em;border-bottom: 2px solid #6DAB6B;}
.faq > main > article > div{display: flex;justify-content: space-between;width: 800px;margin: auto;}
.faq > main > article > div button{padding: 0;border: 0;background: none;}
.faq > main > article > div button a{padding: 0;border: 0;background: none;display: flex;align-items: center;justify-content: space-between; font-size: clamp(1rem, 0.943rem + 0.29vw, 1.3rem);width: 100%; }
.faq > main > article > div button a::before{content: "\f152";font-family: "Font Awesome 6 Free";font-weight: 700;padding-right: .5em;color: #6DAB6B;align-items: center;font-size: 1.3rem;}
.faq > main > article > div button img{width: 3em;height: auto;object-fit:contain;margin-left: 1em;}
.faq > main > article > dl{padding: 1em 0 2em;border-bottom: 1px dotted #ccc;display: flex;flex-direction: column;}
.faq > main > article > dl dt{display: flex;align-items: center;padding-left: 0;margin-left: 0;}
.faq > main > article > dl dt::before{content: "\f059";font-family: "Font Awesome 6 Free";font-weight: 700;padding-right: .5em;color: #6DAB6B;font-size: 2rem;align-items: center;}
.faq > main > article > dl dd{display: flex;align-items: center;padding-left: 0;margin-left: 0;}
.faq > main > article > dl dd::before{content: "\f06a";font-family: "Font Awesome 6 Free";font-weight: 700;padding-right: .5em;color: #FFA95F;font-size: 2rem;align-items: center;}
.faq .linkarea{text-align: center;}
.faq .linkarea a{}
.faq .linkarea a::before{content: '\f360';  font-family: "Font Awesome 6 Free";  font-weight: 900;color: #6DAB6B;margin-right: .5em;}
@media screen and (max-width: 840px) {
.faq > main > article > div{display: flex;flex-direction: column; justify-content: flex-start;width: clamp(17.5rem, 11.31rem + 30.95vw, 50rem);margin: auto;}
.faq > main > article > div button{width: 100%; margin-bottom: 1em;}
.faq > main > article > div button a{}
}

.overview > main > article > p{text-align: center;}
.overview > main > article > h3{font-size: clamp(1.2rem, 1.124rem + 0.38vw, 1.6rem);margin: clamp(1.5em, 1.214em + 1.43vw, 3em) auto;padding: .5em;border-bottom: 2px solid #6DAB6B;}
.overview > main > article > table{width: 800px;margin: auto;}
.overview > main > article > table th{width: fit-content;padding: 1em;text-align: left;border-left: 5px solid #6DAB6B;border-bottom: 1px solid #6DAB6B;}
.overview > main > article > table td{padding: 1em;border-bottom: 1px solid #ccc;}
.overview > main > article > .map {padding-bottom: 5em;width:800px;margin: auto;}
.overview > main > article > .map iframe{width: 100%;}
.overview > main > article > .parking{width:800px;margin: auto;}
.overview > main > article > .parking img{width: 100%;height: auto;object-fit: contain;}
.overview .linkarea{text-align: center;margin: 5em 0;}
.overview .linkarea a{}
.overview .linkarea a::before{content: '\f360';  font-family: "Font Awesome 6 Free";  font-weight: 900;color: #6DAB6B;margin-right: .5em;}
@media screen and (max-width: 930px) {
.overview > main > article > table{width: clamp(17.5rem, 0.451rem + 85.25vw, 50rem);margin: auto;}
.overview > main > article > .map {padding-bottom: 5em;width: clamp(17.5rem, 0.451rem + 85.25vw, 50rem);margin: auto;}
.overview > main > article > .parking{width:clamp(17.5rem, 0.451rem + 85.25vw, 50rem);margin: auto;}
}
@media screen and (max-width: 620px) {
.overview > main > article > table tr{display: flex;flex-direction: column;}
.overview > main > article > table th{width: 100%;padding: .5em 1em;text-align: left;border-left: 5px solid #6DAB6B;border-bottom: 1px solid #6DAB6B;}
.overview > main > article > table td{width: 100%;padding:.5em 1em 1.5em;border-bottom: 1px solid #ccc;}
}

.service > main > article > p{text-align: center;}
.service > main > article > h3{font-size: clamp(1.2rem, 1.124rem + 0.38vw, 1.6rem);margin: clamp(1.5em, 1.214em + 1.43vw, 3em) auto;padding: .5em;border-bottom: 2px solid #6DAB6B;}
.service > main > article > section{padding: clamp(0rem, -0.762rem + 3.81vw, 4rem);}
.service section > h3{font-size: clamp(0.9rem, 0.786rem + 0.57vw, 1.5rem);padding: .5em;border-bottom: 2px solid #6DAB6B;}
.service section > h3::first-letter{font-size: clamp(1.2rem, 1.086rem + 0.57vw, 1.8rem);color:#6DAB6B;font-weight: bold;margin-right: .1em;}
.service section > div{display: flex;flex-direction: row-reverse; justify-content: space-between;align-items: flex-start;}
.service section > div > a img{width: 400px;object-fit: cover;height: auto;aspect-ratio: 4 / 3;}
.service section > div > div{padding-right: 2em;}
.service section > div > div > p{margin: 0 0 .8em 0;line-height: 1.6;}
.service section > div > div > p a::before{content: '\f360';  font-family: "Font Awesome 6 Free";  font-weight: 900;color: #6DAB6B;margin-right: .5em;}
.service .linkarea{text-align: center;}
.service .linkarea a{}
.service .linkarea a::before{content: '\f360';  font-family: "Font Awesome 6 Free";  font-weight: 900;color: #6DAB6B;margin-right: .5em;}
@media screen and (max-width: 840px) {
.service section > div{display: flex;flex-direction: column; justify-content: space-between;align-items: flex-start;}
.service section > div > a img{width: 100%;object-fit:cover;height: auto;margin-bottom: 1em;}
}

.page .greeting > main > article > img{display: flex; width: clamp(12.5rem, 7.738rem + 23.81vw, 37.5rem);object-fit: contain;height: auto;aspect-ratio: 4 / 3;margin: auto auto 1em;}
.page .greeting > main > article > div{width: clamp(18.75rem, 12.798rem + 29.76vw, 50rem); margin: clamp(1.5em, 1.214em + 1.43vw, 3em) auto;}
.page .greeting .linkarea{text-align: center;margin: 5em 0;width: 100%;}
.page .greeting .linkarea a{}
.page .greeting .linkarea a::before{content: '\f360';  font-family: "Font Awesome 6 Free";  font-weight: 900;color: #6DAB6B;margin-right: .5em;}
