@charset "UTF-8";

/**
 * 共通設定
 * ---------------------------------------------------- */

body { background: url("../img/bg.jpg") repeat; }

.site-box {
    margin: 0 auto;
    max-width: 980px;
}

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.pc {
    display: block;
}

.sp {
    display: none;
}

@media screen and (max-width: 768px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }
}

.clearfix { display: inline-table; }

/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */

@media screen and (max-width: 768px) {

    body {
		background: url("../img/bg_sp.jpg") repeat;
	}

    * img {
        height: auto;
        max-width: 100%;
    }

}

/**
 * ヘッダー
 * ---------------------------------------------------- */

.site-header {
    background: url("../img/mv_bg.png") bottom center no-repeat;
    background-size: cover;
    padding: 120px 0;
    text-align: center;
}

.site-header2 {
		background: url("../img/mv_bg02.png") bottom center no-repeat;
		background-size: cover;
}

.site-header__logo { margin-bottom: 30px; }

@media screen and (max-width: 768px) {

    .site-header {
        padding: 30px 15px;
    }

    .site-header__logo { margin-bottom: 10px; }

}

/**
 * コンテンツ
 * ---------------------------------------------------- */

.site-main__event {
    background: #fff;
    border: 2px solid #1EA839;
    margin-bottom: 40px;
    padding: 40px;
}

.site-main__event:last-child {
    margin-bottom: 0;
}

.site-main__heading01 {
    margin: 40px auto;
    text-align: center;
}

.site-main__heading02 {
    background: url("../img/heading_bg.jpg") bottom center repeat-x;
    background-size: cover;
    padding: 20px 0 10px;
    text-align: center;
}

.site-main__heading03 {
    text-align: center;
}

.site-main__heading04 {
    background-color: #00AC3D;
    color: #fff;
    font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-size: 21px;
    font-weight: bold;
    margin: 30px 0 20px;
    padding: 10px 20px;
}

.site-main__content01 {
    background-color: rgba(255,255,255,0.75);
    padding: 40px;
}

.site-main__gmap { margin: 10px 0; }

.site-main__gmap iframe {
    height: 350px;
    width: 100%;
}

.site-main__message {
    margin: 10px 0;
    text-align: center;
}

.site-main__parking a {
    color: #0000FF;
    text-decoration: underline;
}

.site-main__parking a:hover { text-decoration: none; }

.site-main__parking a:after {
    content: url("../img/ico01.png");
    margin-left: .5em;
}


@media screen and (max-width: 768px) {

    .site-main__event {
        margin-bottom: 20px;
        padding: 10px;
    }

    .site-main__heading01 {
        margin: 20px auto 10px auto;
        padding: 0 10px;
    }

    .site-main__heading01 img {
        max-height: 26px;
        width: auto;
    }

    .site-main__heading02 { padding: 10px 0 5px 0; }

    .site-main__heading02 img {
        height: 32px;
        width: auto;
    }

    .site-main__heading04 {
        font-size: 16px;
        margin: 15px 0 10px;
        padding: 5px 10px;
    }

    .site-main__content01 { padding: 15px; }

    .site-main__gmap { margin: 10px 0; }

    .site-main__gmap iframe { height: 30vh; }

    .site-main__parking { font-size: 12px; }

}

/*受賞デザイン*/

.site-main__desc {
	text-align: center;
	padding: 0 40px 40px 40px;
	line-height: 1.5;
}

.site-main__desc p {
	margin-bottom: 1em;
}

.site-main__rank {
	background: #FFF;
	padding: 24px;
	line-height: 1.5;
}

.site-main__rank::after {
	content: "";
	clear: both;
	display: block;
}

.one {
	max-width: 780px;
	margin: auto;
	box-sizing: border-box;
}

.site-main__rank-cmt {
	padding-top: 16px;
	margin-top: 16px;
	font-size: 14px;
	border-top: 1px dashed #aaa;
}

.site-main__rank-txt {
	display: table;
	margin: 0 auto;
}

.second {
	padding-top: 32px;
	max-width: 780px;
	margin: auto;
	box-sizing: border-box;
}

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

.second .site-main__rank {
	margin-bottom: 40px;
	text-align: left;
	width: 100%;
	max-width: 780px;
	display: inline-block;
	box-sizing: border-box;
	vertical-align: top;
}

.site-main__rank-ttl {
	font-size: 24px;
	margin-bottom: 8px;
	font-weight: bold;
	text-align: center;
}

.one .site-main__rank-txt,
.second .site-main__rank-txt {
	margin-bottom: 16px;
}

.site-main__rank-txt table {
	line-height: 2;
}

.site-main__rank-txt table th {
	font-weight: bold;
	padding-right: 24px;
	vertical-align: top;
}

.site-main__rank-txt table td {
	vertical-align: top;
}

.site-main__rank-txt li::before {
	content: "●";
	color: #1EA839;
}

.site-main__rank-txt table a {
	color: #6A3906;
}

.site-main__rank-txt table a:hover {
	text-decoration: none;
}

.site-main__rank-img {
	color: #555;
	font-size: 13px;
	text-align: center;
}

.site-main__rank-img img {
	margin-bottom: 8px;
}

.site-main__rank-img a:hover img {
	opacity: .7;
}

@media screen and (max-width: 996px) {
.second-left,.second-right {
	display: block;
	width: 100%;
	margin-right: 0;
	max-width: 100%;
}

.second .site-main__rank {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
}

@media screen and (max-width: 768px) {
.site-main__desc {
	padding: 0 20px 20px 20px;
	text-align: left;
}

.site-main__desc br {
	display: none;
}

.one,
.second {
	max-width: 470px;
	box-sizing: border-box;
}

.one .site-main__rank-txt,
.second .site-main__rank-txt {
	max-width: 100%;
}

.one .site-main__rank-txt,
.second .site-main__rank-txt {
	float: none;
	margin-bottom: 16px;
}

.one .site-main__rank-img,
.second .site-main__rank-img {
	float: none;
}

.site-main__rank-txt table th {
	white-space: nowrap;
}

.second .site-main__rank {
	min-height: auto;
}
}

/**
 * フッター
 * ---------------------------------------------------- */

.site-footer__sponsor { text-align: center; }

.site-footer__members {
    background-color: #fff;
    padding: 30px 40px 10px 40px;
}

.site-footer__members a {
    color: #42210B;
    font-size: 24px;
    font-weight: normal;
}

.site-footer__members-list:before {
    color: #1EA839;
    content: "●";
    font-size: 24px;
}

.site-footer__members a:hover { text-decoration: none; }

.site-footer__members-list {
    float: left;
    margin-bottom: 20px;
    width: 50%;
}

.site-copyright {
    background-color: #1EA839;
    color: #fff;
    display: block;
    text-align: center;
    margin-top: 40px;
    padding: 30px 0;
}

.site-pageup {
    position: fixed;
    bottom: 10px;
    right: 10px;
}

@media screen and (max-width: 768px) {

    .site-footer__members {
        background-color: #fff;
        padding: 15px;
    }

    .site-footer__members a { font-size: 14px; }

    .site-footer__members-list:before { font-size: 14px; }

    .site-footer__members a:hover { text-decoration: none; }

    .site-footer__members-list {
        float: none;
        margin-bottom: 5px;
        width: 100%;
    }

    .site-footer__members-list:last-child { margin-bottom: 0; }

    .site-copyright {
        font-size: 10px;
        margin-top: 30px;
        padding: 15px 0;
    }

    .site-pageup {
        bottom: 5px;
        right: 5px;
    }

    .site-pageup img {
        height: 32px;
        width: 32px;
    }

}

.not-link {
	pointer-events: none;
    cursor: default;
}

.end {
    border: 1px solid #000;
    padding: 16px;
    text-align:center;
    background:rgba(255,255,255,.6);
    margin: 0 auto 24px !important;
    max-width: 650px;
}

/* バックナンバー */
.bk-wrap {
	margin-top: 80px;
}

.bk-list {
	text-align: center;
}

.bk-list li {
	margin: 0 24px 32px;
	display: inline-block;
	width: 290px;
}

.bk-list li a {
	display: block;
	padding: 16px;
	color: #66391C;
	font-family: serif;
	font-size: 32px;
	font-weight: bold;
	background-color: #FFF;
	border: 1px solid #000;
	text-decoration: none;
}

.bk-list li a:hover {
	text-decoration: none;
}