@charset "utf-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table.table, caption, tbody, tfoot, thead, tr, th, td{border:0;font-family:inherit;font-size:100%;font-style:inherit;font-weight:inherit;margin:0;outline:0;padding:0;vertical-align:baseline;}
:focus{outline:0;}
h2{padding:0 10px;line-height:40px;font-size:18px;color:#ffffff;font-weight:bold;background:#91D465;}
h3{font-weight: bold; color:#7BBB51;margin-bottom: 4px;}
ol, ul{list-style:none;}
table.table{border-collapse:separate;border-spacing:0;}
caption, th, td{font-weight:normal;}
blockquote:before, blockquote:after,q:before, q:after{content:"";}
blockquote, q{quotes:"" "";}
a img{border:0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section{display:block;}
body{color:#333;font-family:"Kosugi Maru", sans-serif;font-weight: 400;font-style: normal;line-height:1.5;-webkit-text-size-adjust:none;}
a{color:#7BBB51;text-decoration:none;}
a:hover{color:#73a51c;}
a:active, a:focus{outline:0;}
#wrapper{margin:0 auto;padding:0 1%;width:98%;position:relative;background:#fff;}
.inner{margin:0 auto;width:100%;}
#header{height:110px;}
#header h1{padding:5px 0px;font-size:10px;color:#6C6C6C;font-weight:normal;}
.logo{float:left;}
.logo p{float:left;}
.logo img{width:auto;float:left;padding:2px 10px 0 10px;}
.logo span{display:block;}
.info{float:right;padding-right:20px;text-align:right;}
.info .open{font-size:11px;}
.logo{margin-top:6px;color:#9EDE75;font-size:26px;font-weight:bold;}
.info .address{margin-top:6px;font-size:13px;font-weight:bold;}
.info .tel{margin-top:6px;color:#9EDE75;font-size:18px;font-weight:bold;}
.logo span,.info span{color:#6C6C6C;font-size:.6em;font-weight:normal;}
#mainBanner{margin:17px auto;padding:0;width:100%;position:relative;line-height:0;}
#mainBanner img{max-width:100%;height:auto;}
#subpage #mainBanner img{border:4px solid #f1f1f1;}
.slogan{position:absolute;max-width:100%;height:auto;bottom:10px;left:0;padding:5px 10px;line-height:1.4;color:#ffffff;}
.slogan h2{padding-bottom:5px;font-size:22px;font-weight:bold;color:#ffffff;}
.gridWrapper{padding-bottom:20px;overflow:hidden;}
* html .gridWrapper{height:1%;}
.grid{float:left;border-radius:5px;background:#fff;}
section.content article{padding:10px;margin-bottom:15px;border:1px solid #f1f1f1;overflow:hidden;}
* html section.content article{height:1%;}
section.content p{margin-bottom:5px;}
section.content img{max-width:90%;height:auto;}
.alignleft{float:left;clear:left;margin:3px 10px 10px 0;}
.alignright{float:right;clear:right;margin:3px 0 10px 10px;}
#gallery .grid img,.border,ul.list img{border:4px solid #f1f1f1;}
table.table{border-collapse:collapse;margin:5px auto 15px auto;width:100%;}
table.table td{border-collapse:collapse;background-color:#F9F9F9;text-align:left;padding:8px;border:1px solid #D6D6D6;}
table.table th{background-color:#F5F5F5;text-align:right;padding:8px;white-space:nowrap;color:#151515;border-top:1px solid #D4D4D4;border-right:4px solid #D4D4D4;border-bottom:1px solid #D4D4D4;border-left:1px solid #D4D4D4;font-weight:normal;letter-spacing:1px;background-repeat:repeat-x;background-position:top;width: 140px;}
table.table2{border-collapse:collapse;margin:5px auto 15px auto;width:100%;}
table.table2 td{border-collapse:collapse;background-color:#F9F9F9;text-align:left;padding:8px;border:1px solid #D6D6D6;}
table.table2 th{background-color:#F5F5F5;text-align:right;padding:8px;white-space:nowrap;color:#151515;border-top:1px solid #D4D4D4;border-right:4px solid #D4D4D4;border-bottom:1px solid #D4D4D4;border-left:1px solid #D4D4D4;font-weight:normal;letter-spacing:1px;background-repeat:repeat-x;background-position:top;}
#sidebar ul{padding:10px;}
#sidebar li{margin-bottom:10px;padding-bottom:10px;list-style:none;border-bottom:1px dashed #f1f1f1;}
#sidebar li:last-child{border:0;margin-bottom:0px;}
#sidebar li a{display:block;}
#sidebar ul.list li{clear:both;margin-bottom:5px;padding:5px 0;overflow:hidden;border:0;}
ul.list li{height:1%;}
ul.list li img{float:left;margin-right:10px;}
ul.list li{font-size:12px;line-height:1.35;}
#footer{clear:both;overflow:hidden;padding:10px;background:#f3f3f3;}
* html #footer{height:1%;}
#footer .grid{padding:0;margin:0;background:transparent;}
#footer #info .logo, #footer #info .info{float:none;}
#footer #info .info{clear:both;padding:0 0 0 12px;text-align:left;}
#footer .logo{font-size:18px;}
#footer .info .tel,#footer .info .tel span,#footer #info .open{font-size:12px;color:#333;}
ul.footnav{float:right;width:650px;padding:0;}
ul.footnav li{float:left;margin-bottom:10px;padding:0 7px 0 8px;font-size:11px;border-right:1px solid #b6b6b6;}
#footer a{color:#333;}
#footer a:hover{color:#888;}
address{clear:both;padding:5px;text-align:center;font-style:normal;font-size:10px;color:#333;background:#dbdbdb;}
@media only screen and (min-width:960px){#header,#wrapper,.inner{width:960px;padding:0;margin:0 auto;}
#wrapper{padding-bottom:20px;}
nav#mainNav{clear:both;overflow:hidden;position:relative;}
nav#mainNav .inner{width:932px;padding:0 14px;}
nav#mainNav ul li{float:left;position:relative;width:calc(931px / 5);}
nav#mainNav li:last-child{border-right:1px dotted #ebebeb;}
nav#mainNav ul li a{display:block;text-align:center;_float:left;font-size:13px;height:45px;padding-top:9px;color:#333;border-left:1px dotted #ebebeb;}
nav#mainNav ul li a span,nav#mainNav ul li a strong{display:block;}
nav#mainNav ul li a span{color:#cdcdcd;font-size:10px;}
nav div.panel{display:block !important;float:left;}
nav#mainNav li.active a, nav#mainNav li a:hover{color:#909090;background:#f9f9f9;padding-top:9px;}
#mainBanner{margin-left:15px;}
#subpage #mainBanner{margin:17px auto;}
#main{float:right;width:667px;padding-right:15px;}
#sidebar{float:left;width:245px;padding:17px 0 0 15px;overflow:hidden;}
#sidebar article{padding:7px;margin-bottom:20px;border:1px solid #f1f1f1;overflow:hidden;}
.gridWrapper{width:960px;margin:0 0 0 -10px;}
#gallery article{padding:10px 0 10px 10px;}
.grid{float:left;width:300px;margin-left:20px;}
#subpage .grid{width:auto;}
#gallery .grid{width:auto;margin:10px 0 2px 10px;}
}
@media only screen and (max-width:959px){*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}
nav#mainNav{clear:both;width:100%;margin:0 auto;padding:0;background:-webkit-gradient(linear, left top, left bottom, color-stop(1, #f5f5f5), color-stop(0.5, #f0f0f0), color-stop(0.00, #f7f7f7));background:-webkit-linear-gradient(top, #f7f7f7 0%, #f0f0f0 50%, #f5f5f5 100%);background:-moz-linear-gradient(top, #f7f7f7 0%, #f0f0f0 50%, #f5f5f5 100%);background:-o-linear-gradient(top, #f7f7f7 0%, #f0f0f0 50%, #f5f5f5 100%);background:-ms-linear-gradient(top, #f7f7f7 0%, #f0f0f0 50%, #f5f5f5 100%);background:linear-gradient(top, #f7f7f7 0%, #f0f0f0 50%, #f5f5f5 100%);border:1px solid #e4e4e4;}
nav .panel{display:none;width:100%;position:relative;right:0;top:0;z-index:1;}
nav div.panel{float:none;}
#subpage #mainBanner{max-width:668px;}
#sidebar{padding-bottom:30px;}
#sidebar article{padding:7px 0;border: 1px solid #f1f1f1;}
#footer .grid,#footer ul.footnav{float:none;width:100%;text-align:center;}
ul.footnav li{float:none;display:inline-block;}
.grid{width:32%;margin:10px 0 0 1%;}
#gallery .grid{float:left;width:31%;margin:0 0 0 1%;}
}
@media only screen and (max-width:640px){#header{height:auto;padding-bottom:10px;}
table.table th{width: 60px;}
h1,.logo,.info{text-align:center;}
.logo,.info{clear:both;width:100%;float:none;}
.alignleft,.alignright{float:none;display:block;margin:0 auto 10px;}
#gallery .grid{float:left;}
}
.disp1{display: none;}
.disp2{display: inline;}
@media only screen and (max-width:480px){.grid{width:100%;}
#mainBanner h2,#mainBanner p{font-size:80%;}
.disp1{display: inline;}
.disp2{display: none;}
table.table th, table.table2 th{font-size:13px;}
}
.imgL{float:left;margin:0 10px 0 0;}
.red{color: red;}
.tc, table.table2 td.tc{text-align: center;}
article p{font-size: 14px;}
ul.taisaku{margin-left:1.5em; font-size:14px;}
ul.taisaku li{list-style-type:disc;}
/* 先頭へ戻るボタンのスタイル */
#scrollToTopBtn {
    display: none; /* 初期状態では非表示 */
    position: fixed; /* 画面に固定 */
    bottom: 30px; /* 下から30px */
    right: 30px; /* 右から30px */
    z-index: 99; /* 他の要素より手前に表示 */
    border: none;
    outline: none;
    background-color: #007bff; /* 背景色 */
    color: white; /* アイコンの色 */
    cursor: pointer; /* カーソルをポインターに */
    padding: 15px;
    border-radius: 50%; /* 円形にする */
    font-size: 24px; /* アイコンのサイズ */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* 影 */
    transition: background-color 0.3s, transform 0.3s; /* ホバー時のアニメーション */
    width: 50px; /* ボタンの幅 */
    height: 50px; /* ボタンの高さ */
    display: flex; /* アイコンを中央揃えにするため */
    align-items: center; /* 垂直方向中央 */
    justify-content: center; /* 水平方向中央 */
}

#scrollToTopBtn:hover {
    background-color: #0056b3; /* ホバー時の背景色 */
    transform: translateY(-3px); /* 少し上に移動するアニメーション */
}

/* アイコン（例: 上向き矢印） */
#scrollToTopBtn::before {
    content: "⬆"; /* Unicodeの上向き矢印 */
}
