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


body {font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
color:#333333;
margin:0;
}

p {margin:0;
word-wrap: break-word;}

ul {margin:0;
padding:0;}

dd {margin:0;}



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

ul {
margin:0;
padding:0;
list-style:none;
}

a:hover {opacity:0.8;
}

@media screen and (min-width:480px) {
/*---------------------------------------------------------------*/
/*------------------------  common   ----------------------------*/
/*---------------------------------------------------------------*/

.img {
overflow:hidden;
text-indent:100%;
white-space:nowrap;
display:block;
}

#wrapper {
overflow:hidden;
}

.wrap {
overflow:hidden;
width:1000px;
margin:0 auto;
}

.sp {
display:none !important;
}

main {
display:block;
}
img {
	max-width: 100%;
}

/*---------------------------------------------------------------*/
/*------------------------  header   ----------------------------*/
/*---------------------------------------------------------------*/

header {
padding:25px 0px;
	color: white;
	background: #7e0001;


}

header h1 {
margin:0;
font-size:24px;
float: left;
width: 20%;
overflow:hidden;
text-indent:100%;
white-space:nowrap;
display:block;
background:url(../img/logo.jpg) no-repeat;
background-position:left top;
background-size:contain;
}
header p {
font-size: 14px;
float:right;
text-align: right;
width:30%;
}

header span {
display: block;
width: 50%;
text-align: center;
float: left;
}
header span a {color:white;}

header nav {
padding:10px 0;
background:url("../img/back.jpg") no-repeat;
	background-position: center;
	background-size: cover;

}

header nav ul {
border-right:1px solid white;
}

header nav li {
display: inline-block;
border-left:1px solid white;
text-align: center;
padding: 0 90px;
}

header article {
margin: 0 auto;
}
header article h2 {
border-left:2px solid red;
padding-left:15px;
} 
header article ul.wrap {
width: 779px !important;
border-right:1px solid red;
	border-bottom: 1px solid red;
background:url("../img/back.jpg") no-repeat;
	background-position: center;
	background-size: cover;
}

header article ul li.wrap {
	color: black;
display: inline-block;
border-left:1px solid white;
text-align: center;
padding: 10px 55px;
}

.slider{
}
.slider img{
    height: auto;
    width: 100%;
}
ul.thumb {
	margin: 30px auto;
}

/*slick setting*/
.slick-prev:before,
.slick-next:before {
    color: #000;
}

header nav ul.wrap {
overflow:visible;
}

ul#menu li.parent {
position: relative;
}

ul.child{
display: none;
position: absolute;
border: none;
left: 0;
padding: 0;
z-index: 1;
background:#CCC;
width: 100%;
}

ul.child li {
	display:block;
	border:none;
	padding:0;
	width:100%;
}

ul.child li a{
    padding: 5px 10px;
    margin-left: -5px;
    margin-right: -5px;
    margin-bottom: -5px;
    display: block;
    color: #fff;
}
header nav li a {
	color:white;
}


/*---------------------------------------------------------------*/
/*------------------------  footer   ----------------------------*/
/*---------------------------------------------------------------*/

footer {
background:#ececec;
padding:30px 0px;
}


footer small {
text-align:center;
color:white;
display:block;
padding:10px;
background: #7e0001;
}

/*---------------------------------------------------------------*/
/*------------------------  main    ----------------------------*/
/*---------------------------------------------------------------*/

main {
padding: 30px 0px;
background: #ececec;
}

main .menu {
width: 530px;
margin: 20px auto;
}

main .menu img {
width: 200px;
height: auto;
}

main .menu dl dt {
font-size: 30px;
line-height: 24px;
border-bottom:1px solid #f0a9ad;
}

main .menu dl dd {
padding: 20px;
line-height: 24px;
}


main .contents aside {

padding: 10px 0;
margin-top: 10px;
}

main .contents aside p {
text-align: center;
}

main .contents aside a {
display: block;
border-radius: 10px;
padding: 10px;
color: white;
font-size: 24px;
text-align: center;
background:url("../img/back.jpg") no-repeat;
background-position: center;
background-size: cover;
width: 500px;
margin: 20px auto;
}

main .aside {
padding: 20px 0px;
background:url("../img/back.jpg") no-repeat;
background-position: center;
background-size: cover;
margin-top: 50px;
}

main .aside dl {
width: 230px;
float: left;
margin: 10px;
color: white;
}

main .aside dt {
text-align: center;
padding: 5px;
font-size: 22px;
background: #7e0001;
	margin-bottom: 10px;
}
main .aside dt a {
color: white;

}

main .aside dd {
	text-align: center;
}

main .aside dd span {
	display: block;
	font-size: 22px;
}

main .aside dd a {
	color: white;
	margin:10px 0px;
font-size: 22px;
	text-align: center;
	display: block;
	border: 1px solid;
}

.detail h2 {
	border-left: 5px solid #7e0001;
    padding-left: 10px;
}

.detail dl {
	border-bottom: 1px solid;
	margin: 0;
}

.detail dt {
	display: table-cell;
	padding: 20px 0px;
	width: 200px;
	text-align: center;
	vertical-align: middle;
	color: white;
background:url("../img/back.jpg") no-repeat;
background-position: center;
background-size: cover;
}
.detail dd {
	width: 700px;
	padding: 20px 0px;
	display: table-cell;
	padding-left: 10px;
}

.detail dd iframe {
	width: 100%;
	height: 300px;
}



 h2 {
border-left:2px solid red;
padding-left:15px;
} 
	
header article.menu {
width: 780px;
}

header article.menu ul {
border-right:1px solid red;
	border-bottom: 1px solid red;
background:url("../img/back.jpg") no-repeat;
	background-position: center;
	background-size: cover;
}

header article.menu ul li {
	color: black;
display: inline-block;
border-left:1px solid white;
text-align: center;
padding: 10px 55px;
}

header article.menu ul li a {
	color:white;
}

main .menu {
overflow: hidden;
margin: 20px auto;
}

main .menu img {
width: 200px;
height: auto;
float: right;
}

main .menu dl {
width: 530px;
float: left;
}

main .menu dl dt {
font-size: 21px;
border-bottom:1px solid #f0a9ad;
}

main .menu dl dd {
padding: 20px;
}
main section.menu {
width: 780px !important;
	margin-bottom: 50px;
}

/* 20201023追加 news枠のstyle */

.news {
    width: 100%;
    margin-bottom: 30px;
    padding: 10px;
    background: #ffffff;
}
.news h2 {
    margin: 0;
    padding-left: 10px;
    font-size: 1.1em;
    border-left: 5px solid #7e0001;
}
.news dl {
    display: table;
    width: 98%;
    border-bottom: 1px dotted #999999;
}
.news dt {
    display: table-cell;
    width: 110px;
    font-size: 0.9em;
    font-weight: bold;
    margin-bottom: 7px;
}
.news dd {
    display: table-cell;
    margin-bottom: 7px;
}    
    
/* 1026追加ここから */
dd strong {
    font-size: 1.3em;
    font-weight: normal;
}
span.nomihoudai {
    margin: 0 5px 0 10px;
    padding: 1px 15px;
    color: #ffffff;
    font-size: 0.9em;
    font-weight: bold;
    border-radius: 0.4em;
}
span.nomihoudai.a {
    background-color: #979C9A;
}
span.nomihoudai.b {
    background-color: #A69855;
}

}
/* 1026追加ここまで */    

@media screen and (max-width:479px) {
/*---------------------------------------------------------------*/
/*------------------------  common   ----------------------------*/
/*---------------------------------------------------------------*/

.img {
overflow:hidden;
text-indent:100%;
white-space:nowrap;
display:block;
}

#wrapper {
overflow:hidden;
}

.wrap {
overflow:hidden;
width:98%;
margin:0 auto;
}


main {
display:block;
}
img {
	max-width: 100%;
}

/*---------------------------------------------------------------*/
/*------------------------  header   ----------------------------*/
/*---------------------------------------------------------------*/

header {
padding:25px 0px;
	color: white;
	background: #7e0001;


}

header h1 {
margin:0;
font-size:24px;
overflow:hidden;
text-indent:100%;
white-space:nowrap;
display:block;
background:url(../img/logo.jpg) no-repeat;
background-position:left top;
background-size:contain;

}
header p {
font-size: 14px;
float:left;
text-align:right;
width:50%;
}

header span {
display: block;
width: 50%;
float: left;
}

header span a {
	color:white;
}

header nav {
padding:10px 0;
background:url("../img/back.jpg") no-repeat;
	background-position: center;
	background-size: cover;

}

header nav ul {

}

header nav li {
display: inline-block;
color:white;
text-align: center;

}

header article {
margin: 0 auto;
}
header article h2 {
border-left:2px solid red;
padding-left:15px;
} 
header article ul.wrap {
width: 779px !important;
border-right:1px solid red;
	border-bottom: 1px solid red;
background:url("../img/back.jpg") no-repeat;
	background-position: center;
	background-size: cover;
}

header article ul li.wrap {
	color: black;
display: inline-block;
border-left:1px solid white;
text-align: center;
padding: 10px 55px;
}

.slider{
}
.slider img{
    height: auto;
    width: 100%;
}
ul.thumb {
	margin: 30px auto;
}

/*slick setting*/
.slick-prev:before,
.slick-next:before {
    color: #000;
}


/*ナビメニューのスタイルを指定*/
nav.NavMenu{
position: fixed; /*表示位置を固定*/
z-index: 2; /*重ね順を変更*/
top: 0; /*表示位置を指定*/
left: 0; /*表示位置を指定*/
background: #640709;/*背景を白にする*/
color: #000; /*文字色を黒にする*/
text-align: center; /*テキストを中央揃え*/
width: 100%; /*全幅表示*/
transform: translateY(-100%); /*ナビを上に隠す*/
transition: all 0.6s; /*アニメーションの時間を指定*/
}

nav.NavMenu ul{

width: 100%;
margin: 0 auto;
padding: 0;

}

nav.NavMenu ul li{
font-size: 1.1em;
list-style-type: none;
padding: 0;
width: 100%;

}

nav.NavMenu ul li:last-child{
padding-bottom: 0;
border-bottom: none; /*最後のメニュー項目のみ下線を消す*/
}

nav.NavMenu ul li a{
display: block; /*クリックできる領域を広げる*/
color: white;
padding: 1em 0;
font-weight:bold;
}
nav.NavMenu.active{
transform: translateY(0%);
}

/*トグルボタンのスタイルを指定*/
.Toggle {
display: block;
position: fixed;    /* bodyに対しての絶対位置指定 */
right: 13px;
top: 12px;
width: 42px;
height: 42px;
cursor: pointer;
z-index: 3;
background:#640709;
}

.Toggle span {
display: block;
position: absolute;
width: 30px;
border-bottom: solid 3px white;
-webkit-transition: .35s ease-in-out;	/*変化の速度を指定*/
-moz-transition: .35s ease-in-out;		/*変化の速度を指定*/
transition: .35s ease-in-out;			/*変化の速度を指定*/
left: 6px;
}

.Toggle span:nth-child(1) {
top: 9px;
}

.Toggle span:nth-child(2) {
top: 18px;
}

.Toggle span:nth-child(3) {
top: 27px;
}

/* 最初のspanをマイナス45度に */
.Toggle.active span:nth-child(1) {
top: 18px;
left: 6px;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
top: 18px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
transform: rotate(45deg);
}


header article.menu ul li a {
	color:white;
}

/*---------------------------------------------------------------*/
/*------------------------  footer   ----------------------------*/
/*---------------------------------------------------------------*/

footer {
background:#ececec;
padding:30px 0px;
}


footer small {
text-align:center;
color:white;
display:block;
padding:10px;
background: #7e0001;
}

/*---------------------------------------------------------------*/
/*------------------------  main    ----------------------------*/
/*---------------------------------------------------------------*/

main {
padding: 30px 0px;
background: #ececec;
}

main .menu {
overflow: hidden;
margin: 20px auto;
}

main .menu img {
width: 200px;
height: auto;
float: right;
}

main .menu dl {

}

main .menu dl dt {
font-size: 30px;
	line-height: 24px;
border-bottom:1px solid #f0a9ad;
}

main .menu dl dd {
padding: 20px;
line-height: 24px;
}


main .contents aside {

padding: 10px 0;
margin-top: 10px;
}

main .contents aside p {
text-align: center;
}

main .contents aside a {
display: block;
border-radius: 10px;
padding: 10px;
color: white;
font-size: 18px;
text-align: center;
background:url("../img/back.jpg") no-repeat;
background-position: center;
background-size: cover;
margin: 20px auto;
}

main .aside {
padding: 20px 0px;
background:url("../img/back.jpg") no-repeat;
background-position: center;
background-size: cover;
margin-top: 50px;
}

main .aside dl {
margin: 10px;
color: white;
}

main .aside dt {
text-align: center;
padding: 5px;
font-size: 22px;
background: #7e0001;
	margin-bottom: 10px;
}

main .aside dd {
	text-align: center;
}

main .aside dd span {
	display: block;
	font-size: 22px;
}

main .aside dd a {
	color: white;
	margin:10px 0px;
font-size: 22px;
	text-align: center;
	display: block;
	border: 1px solid;
}
main .aside dt a {
color: white;

}
.detail h2 {
	border-left: 5px solid #7e0001;
    padding-left: 10px;
}

.detail dl {
	border-bottom: 1px solid;
	margin: 0;
}

.detail dt {

	padding: 20px 0px;

	text-align: center;
	vertical-align: middle;
	color: white;
background:url("../img/back.jpg") no-repeat;
background-position: center;
background-size: cover;
}
.detail dd {

	padding: 20px 0px;

}

.detail dd iframe {
	width: 100%;
	height: 300px;
}

/* 20201023追加 news枠のstyle */

.news {
    width: 100%;
    margin-bottom: 30px;
    padding: 10px;
    background: #ffffff;
}
.news h2 {
    margin: 0;
    padding-left: 10px;
    font-size: 1.1em;
    border-left: 5px solid #7e0001;
}
.news dl {
    display: table;
    width: 98%;
    border-bottom: 1px dotted #999999;
}
.news dt {
    display: table-cell;
    width: 110px;
    font-size: 0.9em;
    font-weight: bold;
    margin-bottom: 7px;
}
.news dd {
    display: table-cell;
    margin-bottom: 7px;
}

/*1023追加ここまで*/


header article.menu ul {
	width:100% !important;
	border-bottom: 1px solid red;
background:url("../img/back.jpg") no-repeat;
	background-position: center;
	background-size: cover;
}

header article.menu ul li {
	color: black;
display: inline-block;
text-align: center;
padding:5px 0;
width:49%;
}

main .menu img {
	display:none;
width: 200px;
height: auto;
float: right;
}

main .menu dl {

}

main .menu dl dt {
font-size:18px;
border-bottom:1px solid #f0a9ad;
padding:5px 0px;
}

main .menu dl dd {
padding:10px;
}
/* 20201023追加 news枠のstyle */

.news {
    width: 100%;
    margin-bottom: 30px;
    padding: 10px;
    background: #ffffff;
}
.news h2 {
    margin: 0;
    padding-left: 10px;
    font-size: 1.1em;
    border-left: 5px solid #7e0001;
}
.news dl {
    display: table;
    width: 98%;
    border-bottom: 1px dotted #999999;
}
.news dt {
    display: table-cell;
    width: 110px;
    font-size: 0.9em;
    font-weight: bold;
    margin-bottom: 7px;
}
.news dd {
    display: table-cell;
    margin-bottom: 7px;
}

/* 1026追加ここから */
dd strong {
    font-size: 1.3em;
    font-weight: normal;
}
span.nomihoudai {
    margin: 0 5px 0 10px;
    padding: 1px 15px;
    color: #ffffff;
    font-size: 0.9em;
    font-weight: bold;
    border-radius: 0.4em;
}
span.nomihoudai.a {
    background-color: #979C9A;
}
span.nomihoudai.b {
    background-color: #A69855;
}

    
}
/* 1026追加ここまで */    