.BodyMain {
    margin: 0 auto;
    text-align: center;
    font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3","メイリオ",Meiryo,verdana,sans-serif;
    -webkit-text-size-adjust: 100%;
}

.main {
    clear: both;
    margin: 0 auto;
    padding-bottom: 75px;
}
.mainS {
    margin: 0 auto;
    padding: 20px 0 30px;
}

header {
    margin: auto;
    width: 960px;
    height: 90px;
    background: url("../images/back_title.png") no-repeat;
}
header .linkTop a {
    float: left;
    width: 520px;
    height: 90px;
    text-indent:-9999px;
}
header .link {
    float: right;
    width: 170px;
    padding-right: 155px;
}
header .link a {
    display: inline-block;
    position: relative;
    text-decoration: none;
    color: #fff;
    width: 170px;
    height: 30px;
    margin-top: 12px;
    line-height: 31px;
    border-radius: 2px;
    text-align: center;
    vertical-align: middle;
    overflow: hidden;
    font-weight: normal;
    background: #088814;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#38c445), color-stop(#088814));
    background-image: -webkit-linear-gradient(#38c445, #088814);
    background-image:    -moz-linear-gradient(#38c445, #088814);
    background-image:     -ms-linear-gradient(#38c445, #088814);
    background-image:      -o-linear-gradient(#38c445, #088814);
    background-image: linear-gradient(#38c445, #088814);
    text-shadow: 1px 1px 1px rgba(102, 102, 102, 0.66);
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
    border-bottom: 1px solid #fff;
}
footer {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 75px;
    z-index: 1002;
    background-color: #d0b290;
}
footer div {
    width: 960px;
}
footer .info {
    float: left;
    width: 560px;
}
footer .link {
    float: left;
    width: 195px;
}
footer .link a {
    display: inline-block;
    position: relative;
    text-decoration: none;
    color: #fff;
    width: 170px;
    height: 25px;
    margin: 8px 0 0 27px;
    line-height: 26px;
    border-radius: 2px;
    text-align: center;
    vertical-align: middle;
    overflow: hidden;
    font-weight: normal;
    background: #088814;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#38c445), color-stop(#088814));
    background-image: -webkit-linear-gradient(#38c445, #088814);
    background-image:    -moz-linear-gradient(#38c445, #088814);
    background-image:     -ms-linear-gradient(#38c445, #088814);
    background-image:      -o-linear-gradient(#38c445, #088814);
    background-image:         linear-gradient(#38c445, #088814);
    text-shadow: 1px 1px 1px rgba(102, 102, 102, 0.66);
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
    border-bottom: 1px solid #fff;
}

#PageTitle {
    width: 960px;
    height: 55px;
    background: rgba(247, 240, 228, 0.4);
    border-bottom: solid 3px #90785d;
    box-shadow: 0 3px 4px rgba(0, 0, 0, 0.15);
    margin: -22px auto 40px auto;
}
#PageTitle h2 {
    font-size: 180%;
    text-align: left;
    color: #90785d;
    text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.9);
    padding: 6px 0 0 13px;
    border: none;
}
#PageTitle h2::after {
    border: none;
}

h1 {
    padding-bottom: 20px;
    font-size: 120%;
    line-height: 40px;
    font-weight: normal;
}

.topTxt {
    font-size: 120%;
    line-height: 40px;
    padding-bottom: 20px;
}
.topTxt .wrap {
    border: 1px solid #90785d;
    width: 455px;
    height: 185px;
    float: left;
    margin: 1%;
    text-align: left;
}
.topTxt .wrap .title {
    background: #90785d;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#d0b290), color-stop(#90785d));
    background-image: -webkit-linear-gradient(#d0b290, #90785d);
    background-image:    -moz-linear-gradient(#d0b290, #90785d);
    background-image:     -ms-linear-gradient(#d0b290, #90785d);
    background-image:      -o-linear-gradient(#d0b290, #90785d);
    background-image:         linear-gradient(#d0b290, #90785d);
    padding: 1% 0;
    text-align: center;
    color: #fff;
    text-shadow: 1px 1px 1px rgba(102, 102, 102, 0.9);
}
.topTxt .wrap .title {
    padding: 0.7% 0;
}
.topTxt .wrap .txt {
    padding: 2% 3%;
}
.topTxt .contact {
    width: 570px;
    padding-top: 15px;
}
.topTxt .phone {
    width: 49%;
    float: left;
    font-size: 150%;
    line-height: 30px;
}
.topTxt .email {
    width: 49%;
    float: right;
    margin-top: 15px;
}
.topTxt .mini {
    font-size: 55%;
}
.topTxt img.icon {
    width: 30px;
    vertical-align: middle;
    margin: -2px 5px 0 0;
}
.topTxt .email img.icon {
    margin: -2px 0 0 6px;
}

h2,
.topicsTitle {
    border-bottom: solid 3px #90785d;
    position: relative;
    text-align: left;
    font-weight: normal;
}
.topicsTitle {
    font-size: 150%;
    margin: 0.8em 0;
}
h2 span,
.topicsTitle span,
.reason1 .back span,
.reason2 .back span,
.reason3 .back span,
.reason4 .back span,
.reason5 .back span {
    font-size: 130%;
    color: #90785d;
    padding: 0 0.02em 0 0.5em;
}
.reason5 .back span {
    color: #088814;
}
h2:after,
.topicsTitle:after {
    position: absolute;
    content: "";
    display: block;
    border-bottom: solid 3px #ccc;
    bottom: -3px;
    width: 90%;
}
h3 {
    color: #90785d;
    font-size: 130%;
    line-height: 35px;
    font-weight: normal;
}
h4.copyright {
    clear: both;
    margin: 0 auto;
    padding: 2px 0;
    font-size: 75%;
    font-weight: normal;
    text-align:center;
    line-height: 25px;
    letter-spacing: 0.07em;
    background: #90785d;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#d0b290), color-stop(#90785d));
    background-image: -webkit-linear-gradient(#d0b290, #90785d);
    background-image:    -moz-linear-gradient(#d0b290, #90785d);
    background-image:     -ms-linear-gradient(#d0b290, #90785d);
    background-image:      -o-linear-gradient(#d0b290, #90785d);
    background-image:         linear-gradient(#d0b290, #90785d);
    color: #fff;
}
h4 a {
    color: #fff;
}
h4.copyright span {
    padding: 0 0.5em 0 2em;
}

div, p {
    margin: auto;
}
section {
    width: 960px;
    margin: auto;
    padding: 15px 0;
}
section.bottom {
    width: 960px;
    margin: auto;
    padding: 15px 0 50px 0;
}
section::after {
    content: "";
    display: block;
    clear: both;
}
.mainT section {
    width: 750px;
    margin: auto;
    padding: 0 0 40px 0;
}

.clear {
    clear: both;
}
.clearfix::after {
    content: "";
    display: block;
    clear: both;
}

a {
    text-decoration: none;
    color: #000;
}

.center {
    text-align: center;
}
.left {
    text-align: left;
}

.mark {
    font-size: 75%;
    margin: 0 0.5em 0 0;
    color: #90785d;
}

img.borderR {
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}

hr {
    color: #dcdcdc;
    background-color: #dcdcdc;
    height: 1px;
    border: none;
    padding: 0;
}

.ya {
    margin: 3px 7px 5px 0;
    vertical-align: middle;
}
.yaR {
    margin: 3px 7px 5px 20px;
    vertical-align: middle;
}
.paw {
    margin: 3px 5px 5px 0;
    vertical-align: middle;
}
.twitter {
    margin: 3px 0 5px 7px;
    vertical-align: middle;
}
.card img {
    vertical-align: middle;
    margin-top: 7px;
}
.visa {
    margin-right: 10px;
}
.jcb {
    margin: 0 3px;
}
.uc,
.ufj {
    margin: 0 15px;
}
.rakuten {
    margin: 0 12px;
}
.aeon {
    margin-right: 10px;
}

.paypay {
    padding-top: 20px;
}
.paypay img {
    vertical-align: middle;
}

.waku {
    border: 1px solid #ccc;
}

.TD30 {
    line-height: 30px;
}

.mini90 {
    font-size: 90%;
    line-height: 25px;
}

.new {
    margin: 2px 0 6px 7px;
    vertical-align: middle;
}

.covid,
.staff {
    width: 450px;
    border: 1px solid #90785d;
    border-radius: 2px;
    background: #f3e5d6;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(60%, #f3e5d6));
    background-image: -webkit-linear-gradient(#fff 60%,#f3e5d6);
    background-image:    -moz-linear-gradient(#fff 60%,#f3e5d6);
    background-image:     -ms-linear-gradient(#fff 60%,#f3e5d6);
    background-image:      -o-linear-gradient(#fff 60%,#f3e5d6);
    background-image:         linear-gradient(#fff 60%,#f3e5d6);
    margin: 15px auto 10px;
    padding: 10px 0;
    font-size: 105%;
}
.covid span {
    color: #dc143c;
}
.houyou {
    width: 450px;
    border: 1px solid #8c8d54;
    border-radius: 2px;
    background: #e9e9cb;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(60%, #e9e9cb));
    background-image: -webkit-linear-gradient(#fff 60%,#e9e9cb);
    background-image:    -moz-linear-gradient(#fff 60%,#e9e9cb);
    background-image:     -ms-linear-gradient(#fff 60%,#e9e9cb);
    background-image:      -o-linear-gradient(#fff 60%,#e9e9cb);
    background-image:         linear-gradient(#fff 60%,#e9e9cb);
    margin: 15px auto 10px;
    padding: 10px 0;
    font-size: 105%;
}
.covid a,
.houyou a,
.staff a {
    width: 100%;
    height: 100%;
    display: inline-block;
}

.videoL,
.videoR,
.videoC {
    padding: 15px 0 20px;
}
.videoL {
    float: left;
}
.videoR {
    float: right;
}
video {
    width: 445px;
    height: 250px;
}

.w95pc {
    width: 95%;
}

.pad1 {
    padding-top: 10px;
}
.pad2 {
    padding-top: 20px;
}
.pad3 {
    padding: 15px 0;
}
.pad4 {
    padding-top: 40px;
}
.pad5 {
    padding-top: 50px;
}
.pad6 {
    padding-left: 1.2em;
}
.pad7 {
    padding-top: 15px;
}
.mar0 {
    margin: -10px 0 0 0;
}
.mar1 {
    margin-top: 30px;
}
.mar2 {
    margin-top: 40px;
}
.mar3 {
    margin-top: 50px;
}

.nav {
    background: #90785d;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#d0b290), color-stop(#90785d));
    background-image: -webkit-linear-gradient(#d0b290, #90785d);
    background-image:    -moz-linear-gradient(#d0b290, #90785d);
    background-image:     -ms-linear-gradient(#d0b290, #90785d);
    background-image:      -o-linear-gradient(#d0b290, #90785d);
    background-image:         linear-gradient(#d0b290, #90785d);
    width: 100%;
    height: 45px;
    margin: 0 auto;
    border-bottom: 3px double #fff;
}
.navMenu {
    width: 960px;
    height: 45px;
    margin: 7px auto;
    list-style: none;
    color: #000;
    padding: 0;
}
.navMenu::after {
    content: "";
    display: block;
    clear: both;
}
.navMenu li {
    float: left;
    width: 192px;
}
.navMenu li:last-child {
    margin-right: 0;
}
.navMenu a {
    line-height: 45px;
    height: 45px;
    display: block;
}
.navMenu a img:hover {
    text-decoration: none;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
}
.submenu {
    width: 960px;
    height: 105px;
    margin: auto;
    padding: 0;
    display: none;
    position: absolute;
    top: 145px;
    left: 50%;
    transform: translateY(0%) translateX(-50%);
    -webkit- transform: translateY(0%) translateX(-50%);
    list-style: none;
    background-color: #d0b290;
    z-index: 1003;
}
.submenu img {
    margin: 7px 0 -9px 0;
    padding: 0;
    vertical-align: bottom;
    border: 1px solid #ccc;
}
.submenu::after {
    content: "";
    display: block;
    clear: both;
}
.submenu li {
    margin: 0;
    padding: 0;
    float: left;
    text-align: center;
    font-size: 80%;
}
.submenu li a {
    color:#333;
    text-shadow: none;
}
.submenu li.menu4 {
    width: 24.96%;
}
.submenu li.menu5 {
    width: 19.96%;
}
.submenu li.menu6{
    width: 16.65%;
}
.submenu li.menu7 {
    width: 14.28%;
}

#slide {
    width: 960px;
    height: 450px;
}
#topics {
    width: 500px;
    float: left;
}
#topics h2 {
    letter-spacing: -0.05em;
}
.topics { 
    width: 490px;
    height: 290px;
    vertical-align: top;
    overflow: auto;
    border: 1px solid #eaeaea;
    margin: 35px 0 0 4px;
    text-align: left;
    line-height: 25px;
    font-size: 90%;
    letter-spacing: 0.08em;
}
.topicsList a {
    display: block;
    border-bottom: 1px dotted #eaeaea;
    padding: 0.7em 1em;
    color: #000000;
}
.topicsList a:hover {
    background: #f3e5d6;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(60%), color-stop(#f3e5d6));
    background-image: -webkit-linear-gradient(#fff 60%,#f3e5d6);
    background-image:    -moz-linear-gradient(#fff 60%,#f3e5d6);
    background-image:     -ms-linear-gradient(#fff 60%,#f3e5d6);
    background-image:      -o-linear-gradient(#fff 60%,#f3e5d6);
    background-image:         linear-gradient(#fff 60%,#f3e5d6);
}
.topicsList1 {
    border-bottom: 1px dotted #eaeaea;
    padding: 0.7em 1em;
}

.fontRed {
    color: #dc143c;
}
.marker {
    background: linear-gradient(transparent 70%, #c1edc7 30%);
}

#area {
    width: 450px;
    float: right;
    padding: 27px 0 0 0;
}
#area img.map {
    border: 1px solid #ccc;
    margin: 5px 0 0 0;
}

.reason1,
.reason2,
.reason3,
.reason4,
.reason5 {
    border: 1px solid #ccc;
    border-radius: 2px;
    float: left;
    width: 312px;
    height: 235px;
    line-height: 30px;
    box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.15);
    margin: 15px 0;
}
.reason3,
.reason4 {
    height: auto;
}
.reason1 .pad1 {
    padding-top: 23px;
}
.reason2 {
    margin: 15px 9px;
}
.reason3 {
    margin: 0 0 40px;
}
.reason4 {
    margin: 0 9px 40px 9px;
}
.reason1 .back,
.reason2 .back,
.reason3 .back,
.reason4 .back,
.reason5 .back {
    font-size: 105%;
    width: 310px;
    padding: 7px 0 5px 0;
}
.reason1 .back,
.reason2 .back,
.reason3 .back,
.reason4 .back {
    background: #f0dcc3;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#faf5ef), color-stop(#f0dcc3));
    background-image: -webkit-linear-gradient(#faf5ef,#f0dcc3);
    background-image:    -moz-linear-gradient(#faf5ef,#f0dcc3);
    background-image:     -ms-linear-gradient(#faf5ef,#f0dcc3);
    background-image:      -o-linear-gradient(#faf5ef,#f0dcc3);
    background-image:         linear-gradient(#faf5ef,#f0dcc3);
}
.reason5 .back {
    background: #c7f0c3;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#effaf1), color-stop(#c7f0c3));
    background-image: -webkit-linear-gradient(#effaf1,#c7f0c3);
    background-image:    -moz-linear-gradient(#effaf1,#c7f0c3);
    background-image:     -ms-linear-gradient(#effaf1,#c7f0c3);
    background-image:      -o-linear-gradient(#effaf1,#c7f0c3);
    background-image:         linear-gradient(#effaf1,#c7f0c3);
}
.reason1 .back,
.reason2 .back,
.reason5 .back {
    margin-bottom: 7px;
}
.reason1 a,
.reason2 a,
.reason3 a,
.reason4 a,
.reason5 a {
    display: inline-block;
}

.kasouba {
    width: 49%;
    float: left;
    line-height: 30px;
    padding-bottom: 10px;
}
.kasoubaInfo {
    width: 49%;
    float: right;
    line-height: 30px;
    padding-top: 100px;
}
.noukotsudou {
    width: 49%;
    float: right;
    line-height: 30px;
    padding-bottom: 10px;
}
.noukotsudouInfo {
    width: 49%;
    float: left;
    line-height: 30px;
    padding-top: 100px;
}
.kasouba img.pic1,
.noukotsudou img.pic1 {
    width: 440px;
    height: auto;
    border: 1px solid #ccc;
    margin: 20px 0 15px 3px;
}

.mapL {
    width: 49%;
    float: left;
    line-height: 30px;
    padding-top: 40px;
}
.mapL span {
    color: #fe0000;
}
.mapR {
    width: 49%;
    float: right;
    line-height: 30px;
    padding-top: 40px;
}
.mapR span {
    color: #03e803;
}

.youtube {
    position: relative;
    padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
    margin: 10px 0;
    height: 0;
    overflow: hidden;
}
 
.youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.banner {
    margin: 40px 0 35px;
}
.banner img {
    width: 260px;
    border: 1px solid #ccc;
}

.visitL {
    width: 470px;
    height: 180px;
    float: left;
    line-height: 30px;
    border: 1px solid #ccc;
    border-radius: 2px;
    box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.15);
    margin-top: 20px;
}
.visitR {
    width: 470px;
    height: 180px;
    float: right;
    line-height: 30px;
    border: 1px solid #ccc;
    border-radius: 2px;
    box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.15);
    margin-top: 20px;
}
.visitL h3,
.visitR h3 {
    border-bottom: 1px dotted #ccc;
    font-weight: normal;
    margin-top: 7px;
    font-size: 18px;
}
.visitL p,
.visitR p {
    margin-top: -10px;
}

.association {
    width: 250px;
    float: left;
    padding-top: 23px;
}

table.list1 {
    width: 100%;
    margin: 40px auto;
}
td {
    border: 1px solid #dcdcdc;
    padding: 10px 10px 6px 10px;
    letter-spacing: 0.07em;
    line-height: 30px;
    text-align: left;
}
.list1 td.tdB1 {
    width: 25%;
    background: rgba(175, 230, 204, 0.2);
    text-align: center;
}

.mobi {
    width: 690px;
    float: left;
    padding: 20px 0 15px 20px;
}
.mobiTxt {
    font-size: 80%;
    letter-spacing: 0.07em;
    text-align: left;
    line-height: 20px;
}
.mobiTxt p {
    padding-left: 55px;
}
.mobiQr {
    float: right;
    margin: -25px 0 5px 25px;
}

.right,
.counter {
    text-align: right;
}

#page-top {
    position: fixed;
    bottom: 110px;
    right: 20px;
}
#page-top a {
    background: url("../images/page-top.png") no-repeat;
    width: 90px;
    height: 80px;
    display: block;
}
#page-top a:hover {
    text-decoration: none;
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
}
