@charset "UTF-8";

/* ---------------------
 * FONTSIZE MODEL * 
 * ---------------------
 *  63% ->	10pxに相当
 *  70% ->	11pxに相当
 *  75% ->	12pxに相当
 *  82% ->	13pxに相当
 *  88% ->	14pxに相当
 *  94% ->	15pxに相当
 * 100% ->	16pxに相当
 * 107% ->	17pxに相当
 * 113% ->	18pxに相当
 * 119% ->	19pxに相当
 * 125% ->	20pxに相当
 * --------------------- */


/* ========BASIC======== */
* {
	font-family:"メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", "Hiragino Kaku Gothic Pro", HiraKakuPro-W3, "ヒラギノ角ゴ Pro W3", verdana, sans-serif;
	color:#111111;
}

body {
	margin:0;
	padding:0;
	letter-spacing:1px;
	background:#f9fff0 url("../images/bg_body.jpg") 0 0 no-repeat;
	background-size:100%;
}

br {
	letter-spacing:normal;
}

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

a:hover {
	color:#dc143c;
	font-weight:600;
}

a.pdf {
 background-image: url("pdf.gif");
 background-repeat: no-repeat;
 background-position: right center;
 padding-right: 30px;
 margin-right: 3px;
}

p {
	padding:0 15px;
}

img {
	max-width:100%;
	border:0;
}

.center {
	display:block;
	margin-left:auto;
	margin-right:auto;
	text-align:center;
}

h1,h2,h3,h4,h5,h6 {
	margin:0;
	padding:0 15px;
}

.small {
	font-size:82%;
}

.clear { 
	clear:both;
	visibility:	hidden;
	height:0;
}

.blue {
	color:#0000ff;
}

.red {
	color:#ff0000;
}

/* ========TEMPLATE LAYOUT======== */

div#headWrap {
	width:100%;
	height:140px;
	background:#5eba30;
	background:url("../images/head_bg_color.jpg") 100% 100% repeat-x;
	padding-top:42px;
}

div#header {
	position:relative;
	margin-left:auto;
	margin-right:auto;
	width:100%;
	height:100%;
	background:url("../images/head_bg_color_center.jpg") 100% repeat-x;
	max-width:930px;
}

div#pr {
   position:relative;
   left:0;
   width:100%;
   z-index:21;
   color:#fff;
   text-shadow:
        2px 2px 2px #fff,
        2px -2px 2px #fff,
        -2px 2px 2px #fff,
        -2px -2px 2px #fff,
        0 0 22px #fff;
}

div#topimg {
	position:absolute;
	bottom:-8px;   /* 不明 なぜずれる？ */
	right:0px;
	z-index:19;
	float:right;
}
div#toplogo {
	position:absolute;
	bottom:-8px;   /* 不明 なぜずれる？ */
	left:0px;
	z-index:20;
	float:left;
}

div#menuWrap {
	width:100%;
	position:fixed;
	top:0px;
	z-index:30;
}

div#indexslideshow {
	position:relative;
	clear:left;
	*top:-4px; /* IE6・IE7のみ読み込ませる */
	margin:0 5px;
	padding:2px;
	max-width:786px;
	background:#d63313;
}

div#subtitleimg {
	position:relative;
	clear:left;
	*top:-3px; /* IE6・IE7のみ読み込ませる */
	margin-top:0px;
	margin-left:0px;
	margin-right:auto;
	width:100%;
	max-width:825px;
	padding:15px;
	background:#d63313;
}


div#contents {
	width:85%;  /* calc未サポートブラウザ */
	width: -webkit-calc(100% - 120px);  /* iOS6 Safari6 */
	width: calc(100% - 120px);
	position:relative;
   	margin-left:auto;
	margin-right:auto;
	padding:0 15px;
	background:#fff;
}

div#main {
	width:65%;  /* calc未サポートブラウザ */
	width: -webkit-calc(100% - 260px);  /* iOS6 Safari6 */
	width: calc(100% - 260px);
    float:right;
    padding:0px 12px 20px 15px;
	background:#fff;
}

div#sidesub {
   float:left;
   width:220px;
   padding:0 8px 20px 5px;
}

div#adarea {
   clear:both;
   margin:0 6px;
   text-align:center;
   font-size:88%;
   border-radius: 10px 10px 0 0 / 10px 10px 0 0;
   -webkit-border-radius: 10px 10px 0 0 / 10px 10px 0 0;
   -moz-border-radius: 10px 10px 0 0 / 10px 10px 0 0;
   border:1px solid black;
}
div#adtitle1 {
   border-radius: 10px 10px 0 0 / 10px 10px 0 0;
   -webkit-border-radius: 10px 10px 0 0 / 10px 10px 0 0;
   -moz-border-radius: 10px 10px 0 0 / 10px 10px 0 0;
   background: -moz-linear-gradient(to bottom,#488d47,#62d560); 
   background: -webkit-linear-gradient(to bottom,#488d47,#62d560); 
   background: linear-gradient(to bottom,#488d47,#62d560); 
   font-size: 132%;
   color: white;
   text-align: right;
   padding-right: 15px;
}
div#adtitle2 {
   background-color:#dafed9;
   text-shadow: 1px 2px 3px #808080;
   font-size: 133%;
   letter-spacing: -1px;
   text-align: center;
}
div#adfoot {
   background-color:#dafed9;
   text-align: center;
}
div#adarea img {
	border:0;
	padding:5px;
}

div#totop {
   clear:both;
   padding:0 0 10px 10px;
}

div#footer {
	background:#EBEADD;
	height:200px;
}

div#sns {
	display:block;
}
div.fb-like {
	display:inline;
	margin:0 3px 0 0;
	top:-9px;
}
.twitter-follow-button {
	display:inline;
	padding:2px;
	margin-top:10px;
}

/* ========HEADER CUSTOMIZE======== */
div#header h1 {
   position:absolute;
   margin:0;
   bottom:0px;
   font-size:200%;/* 32px相当 */
   color:#fff;
   line-height:50px;
   left:0;
   z-index:20;
}

div#header h1 img {
	width:100%;
}

div#header #pr p {
   margin:0;
   font-size:82%;/* 13px相当 */
}

/* ========MENU CUSTOMIZE======== */
div#menu {
	height:42px;
	background-color: #006000;
	background-image: linear-gradient(0deg, #006000 0%, #16cf3c 75%, #209f40 100%);
	z-index:31;
}

img#menu_logo {
	height:42px;
	display:none;
	position:relative;
	float:left;
	margin-left:10px;
}

div#menu ul.menu {
	clear:left;
	position:relative;
	margin-top:auto;
	margin-left:auto;
	margin-right:auto;
	padding:0px;
	width:970px;
}

div#menu ul.menu ul {
	position:absolute;
	padding:0px;
}

div#menu ul.menu li {
	float:left;
	list-style-type:none; /* リストの頭の「・」を消す */
}

div#menu ul.menu li a {	/* 中央用のボタン */
	background-color: #006000;
	background-image: linear-gradient(0deg, #006000 0%, #16cf3c 75%, #209f40 100%);
	border:1px outset #1cff4a;
	display:block;
	width:136px;
	height:40px;
	font-size:88%;/* 14px相当 */
	text-align:center;
	line-height:40px;
	font-weight:bold;
	color:#FFF;
	text-decoration:none;
	z-index:35;
}

div#menu ul.menu li a:hover {
	background-color: #006000;
	background-image: linear-gradient(0deg, #006000 0%, #1cff4a 75%, #209f40 100%);
	border:1px inset #73191E;
	color:#FFF;
}

div#menu ul.menu li ul.sub {
	display:none;
	margin-left:auto;
	margin-right:auto;
}

div#menu ul.menu li ul.sub li {
	clear:left;

	position:relative;
	margin-top:-1px;
	padding:0;
}

div#menu ul.menu li ul.sub a {
	background-color: #2d322d;
	background-image: linear-gradient(0deg, #2d322d 25%, #141914 100%);
	border:1px outset #788080;
	width:136px;
	height:40px;
	font-size:75%;/* 12px相当 */
	text-align:center;
	line-height:40px;
	font-weight:bold;
	color:#FFF;
	text-decoration:none;
	z-index:32;
}

div#menu ul.menu li ul.sub a:hover {
	color:#FFF;
	background-color: #ed480a;
	background-image: linear-gradient(0deg, #b62000 0%, #ff4300 75%, #f44206 100%);
	border:1px inset #B61600;
}

div#menu ul.menu:after {			/* clearfix */
	height:0;
	visibility:hidden;
	content:".";
	display:block;
	clear:both;
}


/* ========MAIN CONTENTS CUSTOMIZE======== */
.spanclear {
	color: inherit;
	font-size: inherit;
	text-shadow: inherit;
}
.pankuzu p {
	font-size:82%;/* 13px相当 */
}

div#main a {
	padding:0;
	color:#800000;
	font-weight:bold;
}

div#main a:hover {
	color:#ff0000;
	text-decoration:underline;
	text-underline-position:below;
}

div#main h2 {
   margin-bottom:8px;
   margin-top:4px;
   padding:0 0 0 85px;
   color:#c80012;/* 元色 → #5A5132 */
   font-size:107%;/* 17px相当 */
   font-weight:bold;
   line-height:40px;
   border:1px solid #D8D8D8;
   background:url("../images/bg_h2.gif") 0 100% no-repeat;
   background-image:url("../images/bg_h2.gif"),linear-gradient(to bottom, #ffffff,#cef6d8);
   background-color:#f0f0ff;
   background-position:top left;
}

div#main h3 {
   margin: 20px 0 0 3px;
   font-size:113%;/* 18px相当 */
   background:url("../images/bg_h3.gif") 0 100% no-repeat;
   padding-left:30px;
   border-bottom: 1px dotted blue;
   background-position:top left;
}

div#main div#theme {
	font-size:177%;
	font-weight:bold;
	margin-left:10px;
	color:#b81566;
	transform:scale(1,1.1);
}

div#main h4 {
   margin: 20px 0 0 3px;
   font-size:94%;/* 15px相当 */
   background:url("../images/tag_green.gif") 0 100% no-repeat;
   padding-left:30px;
   border-bottom: 1px dotted green;
}

div#main h5 {
	border-left:7px solid #e60012;
	padding:2px 0 2px 10px;
	font-size:82%;/* 13px相当 */
}

div#main h6 {
	margin-bottom:2px;
	font-size:75%;/* 12px相当 */
}

div#main p {
	margin:0 0 1em 0;
	padding:5px 14px 0 14px;
	font-size:88%; /* 14px相当 */
	line-height: 1.8em;
	letter-spacing:-0.05px;
}

div#main ul,div#main ol,div#main dl {
   font-size:75%;/* 12px相当 */
}

div#main dt {
   margin-bottom:3px;
}

div#main dd {
   padding:0;
   margin:0 0 0.5em 1em;
   padding:7px;
   background:#f1f1f1;
}

iframe.info {
	margin-left:auto;
	margin-right:auto;
	width: 100%;
	height: 350px;
	border:0px;
	padding: 0.5em;
	overflow: auto;
}

.adbana {
	margin-left:auto;
	margin-right:auto;
	padding: 0;
	overflow: auto;
}

/*CHARACTER CUSTOMIZE */
/*INFORMATION CUSTOMIZE */
/* table for infomation.html and charactter.html*/
.tinfo {
	margin-left:auto;
	margin-right:auto;
	border-collapse:collapse;
	border:3px solid #5bb925;
	border-spacing:0;
}

.tinfo th {
	border:1px #5bb925 solid;
	background:#99e26d;
	width:20%;
	font-size:82%;
	padding:10px;
}

.tinfo td {
	border:1px #5bb925 solid;
	background:#f5fffa;
	width:80%;
	padding:10px 15px;
	font-size:82%;
}

.tinfo caption {
	font-weight:bold;
	color:#ff8c00;
}

.backset{
	position: relative;	/* IE用角丸(behavior: url("/PIE.htc");)を採用する場合はこの行は必須！ */
	padding-left:25px;
	padding-right:8px;
	padding-top:8px;
	padding-bottom:8px;
	background:#eec6c6;
	-moz-border-radius:20px;    /* 角丸　Firefox */
	-webkit-border-radius:20px; /* 角丸　Safari,Chrome */
	border-radius:20px;         /* 角丸　CSS3 */
	behavior: url("/PIE.htc");	/* 角丸　CSS3 IE対応用 */
	border:2px solid #c84646;
}

.backset_chara{
	position: relative;	/* IE用角丸(behavior: url("/PIE.htc");)を採用する場合はこの行は必須！ */
	padding-left:25px;
	padding-right:8px;
	padding-top:8px;
	padding-bottom:8px;
	background:#eec6c6;
	-moz-border-radius:20px;    /* 角丸　Firefox */
	-webkit-border-radius:20px; /* 角丸　Safari,Chrome */
	border-radius:20px;         /* 角丸　CSS3 */
	behavior: url("/PIE.htc");	/* 角丸　CSS3 IE対応用 */
	border:2px solid #c84646;
	margin:0 auto;
	font-size:88%;
}

/*ABOUT US CUSTOMIZE */
.aboutusinfo {
	margin-left:auto;
	margin-right:auto;
	position: relative;	/* IE用角丸(behavior: url("/PIE.htc");)を採用する場合はこの行は必須！ */
	padding-left:25px;
	padding-right:8px;
	padding-top:8px;
	padding-bottom:8px;
	background:#eec6c6;
	-moz-border-radius:20px;    /* 角丸　Firefox */
	-webkit-border-radius:20px; /* 角丸　Safari,Chrome */
	border-radius:20px;         /* 角丸　CSS3 */
	behavior: url("/PIE.htc");	/* 角丸　CSS3 IE対応用 */
	font-size:88%;
	border:2px solid #c84646;
}

/*CONTEST CUSTOMIZE */

/* コンテスト結果の表全般 */
.contest table {
	width:100%;
	border:2px solid gray;
	border-collapse: collapse;
	margin:0 auto;
	max-width:825px;
	font-size:107%;
	font-weight:bold;
}
.contest tr td {
	border:1px solid gray;
	border-collapse: collapse;
}
.contest td {
	padding-left:10px;
}
.contest td:nth-child(odd) { /* １列目賞の名前のカラム */
	width:45%;
}

.contest tr:nth-child(odd) { /* １行毎に色を変える */
	background-color:#dff5d1;
}
/* 大賞・準大賞の表（共通） */
.contest tr.taisho td, .contest tr.juntaisho td {
	text-shadow:
		2px  2px 1px #ffffff,
		-2px  2px 1px #ffffff,
		2px -2px 1px #ffffff,
		-2px -2px 1px #ffffff,
		2px  0px 1px #ffffff,
		0px  2px 1px #ffffff,
		-2px  0px 1px #ffffff,
		0px -2px 1px #ffffff;        /* 文字の影 */
	position: relative;
}
/* タイトル */
.contest tr.taisho td:nth-child(odd), .contest tr.juntaisho td:nth-child(odd) {
	width: 100px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	text-align: center;
	padding-left: 0px;
}
/* チーム名が写真の上に来るように */
.contest tr td div.team {
	position:relative;
	z-index:10;
}
/* 大賞・準大賞チームの写真 */
.contest tr.taisho td img, .contest tr.juntaisho td img {
	position:absolute;
	top:1px;
	right:1px;
	border: 1px solid white;
}
/* 大賞 */
.contest tr.taisho td {
	font-size:186%;
	letter-spacing:2px;
	height: 152px;
	background-color:#DA8E00;
	background-image: linear-gradient(to top left, #F7DE05, #DA8E00, #EDAC06, #F7DE05, #ECB802, #DAAF08, #B67B03);
}

.contest tr.taisho td:nth-child(odd) {
	background-color:#DA8E00;
	background-image: url('../images/contest/medal_gold.gif'),linear-gradient(to top left, #F7DE05, #DA8E00, #EDAC06, #F7DE05, #ECB802, #DAAF08, #B67B03);
}


.contest tr.taisho td img {
	width:225px;
	height:150px;
}

.contest tr.juntaisho td {
	font-size:136%;
	height: 102px;
	background-color:#BABAC2;
	background-image: linear-gradient(to top left, #A5A5A5, #BABAC2, #E8E8E8, #A5A5A5, #BABAC2);
}
.contest tr.juntaisho td:nth-child(odd) {
	background-color:#BABAC2;
	background-image: url('../images/contest/medal_silver.gif'),linear-gradient(to top left, #A5A5A5, #BABAC2, #E8E8E8, #A5A5A5, #BABAC2);
}
.contest tr.juntaisho td img {
	width:150px;
	height:100px;
}

.contest tr.juntaisho td a:hover {
	text-decoration:none;
	font-weight:bold;
}

/* 賞の名前で長ーいやつを横幅狭く表示 */
.contest .narrow-left {
	display:inline-block;
    transform: scale(0.7, 1);
    transform-origin: top left;
    width: 143%;               /* 1/0.7*100 */
}

.contest_title {
	width:100%;
	max-width:510px;
	font-size: 110%;
	background:white url("../images/contest/contest_title_bg.jpg") 100% 0 no-repeat;
	background-size:contain;
}
div#main .contest_title p {
	margin:0;
	line-height:1.1em;
}
.contest_title strong {
	font-size:188%;
}

/*SITEMAP CUSTOMIZE */
div#sitemap {
	font-size:160%;
	margin-left:30px;
}

div#sitemap ul.menu {
	padding:0
}

div#sitemap ul.menu>li {
	list-style:none;
	padding:15px 0 5px 0;
	width:100%;
	border-bottom:1px dotted gray;
}
div#sitemap ul.menu>li>a {
	/* h5相当 */
	border-left:7px solid #e60012;
	padding:2px 0 2px 10px;
	font-size:82%;/* 13px相当 */
}

div#sitemap ul.sub {
	margin-left:auto;
	margin-right:auto;
	padding:0 0 5px 0;
	list-style-image:url(../images/square_red.gif);
	list-style-type:square;
}

div#sitemap ul.sub li {
	margin-left:30px;
	line-height:1.3em;
	padding-left:1px;
	padding:2px 1px 1px 0;
}

div#sitemap hr {
	height:1px;
	border-width:1px 0px 0px 0px;
	border-style:dotted;
}

/*PRIVACY CUSTOMIZE */
.privacy {
	font-size:88%;
	width:480px;
	margin-left:30px;
}

.privacy ul {
	width:400px;
	margin-left:auto;
	margin-right:auto;
	padding:0 0 15px 0;
	list-style-type:none;
}

.privacy ul li {
	line-height:1.3em;
	padding-left:1px;
	font-size:107%;
}

.privacy hr {
	height:1px;
	border-width:1px 0px 0px 0px;
	border-style:dotted;
}


/*LINKS CUSTOMIZE */
.links ul {
	margin-left:auto;
	margin-right:auto;
	list-style-image:url(../images/square_red.gif);
	list-style-type:disc;
}

.links ul li {
	line-height:2;
	padding-left:1px;
	font-size:115%;
}

.links hr {
	width:100%;
	max-width:400px;
	margin-left:auto;
	margin-right:auto;
	height:1px;
	border-width:1px 0px 0px 0px;
	border-style:dotted;
}

/*ACCESS CUSTOMIZE */

.access .yosakoimap_frame {
	width: 100%;
	display: block;
	vertical-align:top;
	font-size:80%;
}

.access .yosakoimap_frame.map_big {
	max-width: 840px;
}
.access .yosakoimap_frame.map_small {
	max-width: 238px;
}

.access .yosakoimap_frame img.map {
	border: none;
	height: auto;
}

.access .yosakoimap_frame img#map1 {
	width: 100%;
}

.access table {
	border: none;
	font-size:76%;
	border-collapse: collapse;

}
.access table th {
	white-space: nowrap;
}
.access table th,.access table td {
	border: 1px solid gray;
}


/*GALLERY CUSTOMIZE */
.gallery {

}

div#year {
	text-align:right;
	font-size:82%;
}

div#year a {
	margin: 0;
	white-space: nowrap;
}

div#main .gallery a {
	padding:2px;
	color:#808080;
	font-weight:bold;
}

div#main .gallery a:hover {
	color:#ff0000;
	text-decoration:none;
	text-underline-position:below;
}

div#page {		/* 枠の指定 */
	margin-left:auto;
	margin-right:auto;
	width: 520px;
	_width:500px;	/* IE6 */
	background-color: #f9fbf9;
	text-align: left;
	border-color: #ddd;
	border-style: solid;
	border-width: 1px;
}
div#container {		/* サムネイル画像の位置 */
	padding: 15px;
}

pre {
	font-size: 1.2em;
	line-height: 1.2em;
	overflow-x: auto;
}


/*CONTACT CUSTOMIZE */
div#mailform {
	padding: 5px;
}
table.mailform {
	margin-left:auto;
	margin-right:auto;
	width:95%;
}
table.mailform tr th,table.mailform tr td {
	text-align: left;
	font-weight: normal;
	font-size: 12px;
	border-bottom: solid 1px #999999;
	padding: 7px 5px 7px 5px;
}
table.mailform tr {
	width:100%;
}

table.mailform th {
	max-width: 100px;
}

div#mailform span {
	color: #CC0000;
	font-size: 10px;
}

th.bc {
	background:#f0fff0;
}

table.mailform tr th p {
	margin: 0px;
	padding: 0px;
	font-size: 10px;
	color: #999999;
}
table.mailform tr td textarea {
	width: 100%;
	height: 120px;
	margin-right: 3px;
}

.error {
	padding:15px;
	background:#ffffcc;
	text-align:center;
	font-weight:bold;
}

.thanks {
	padding:15px;
	background:#ffffcc;
	text-align:center;
	font-weight:bold;
}


/*PHOTO CONTEST CUSTOMIZE */
.photocontext {
	font-size:88%;
	width:400px;
	margin-left:auto;
	margin-right:auto;
}



/*TEAMS CUSTOMIZE */
.tb {
	margin:0 auto;
	border:1px solid #a9a9a9;
	border-spacing:0;
	border-collapse:collapse;
	width:95%;
}

.tb th {
	border:1px solid #a9a9a9;
	background-color:#e5f1e6;
	height:30px;
	font-size:88%;
	vertical-align: middle;
}

.tb td {
	border:1px solid #a9a9a9;
	background-color:#f7f7f7;
	text-align:left;
	font-size: 88%;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	padding-right: 10px;
}

.tb td.fu {
	border:1px solid #a9a9a9;
	background-color:#f7f7f7;
	width:25%;
	text-align:left;
	font-size: 70%;
}

.tb td.pl {
	border:1px solid #a9a9a9;
	background-color:#f7f7f7;
	width:16%;
	text-align:center;
	font-size: 78%;
} 
.tb td.zh {
	border:1px solid #a9a9a9;
	background-color:#f7f7f7;
	width:13%;
	text-align:center;
} 


/*SUPPORT CUSTOMIZE */

.supprt_back {
	background-margin:0 30px 0 0;
	background:url("../images/support/support_back.png");
}

div#main .support a {
	padding:5px;
	color:#004200;
	text-decoration:none;
	text-underline-position:below;
	text-shadow:1px 1px 0px #aade7c;
}

div#main .support a:hover {
	padding:5px;
	color:#8b0000;
	text-decoration:none;
	text-underline-position:below;
}

div#aisatsu {
	clear:both;
	border:1px solid black;
	font-size:12px;
	margin:5px;
	padding:8px;
	background-color:#ebf1ea;
}
div#aisatsu p {
	color:#646464;
    margin-bottom: 0px;
	padding:0;
}

div#kaisaibi {
	position:relative;
	font-size: 16px;
	font-weight: bold;
	border:1px solid gray;
	padding-right:30%;
	margin:4px;
	background-position: right bottom; 
	background-repeat: no-repeat;
	background-size:contain;
	background:linear-gradient(to right bottom, pink, white 60%);
	border: 1px dotted black;
}
div#kaisaibi div#kaisai_title {
	background-color: black;
	color: white;
	margin-left: 0;
	padding:0 10px 0;
	font-size:18px;
	font-weight:bold;
	letter-spacing:-1px
}
div#kaisaibi p {
	font-size:13px;
	font-weight:bold;
	margin:0;
}
div#kaisaibi strong {
	font-size: 18px;
	font-weight: bold;
	color: #b81566;
	margin: 0;
	padding-left:10px;
	letter-spacing:-2.5px;
}
div#kaisaibi small {
	font-size:14px;
	color: #b81566;
	margin: 0;
	letter-spacing:-3px;
}
div#kaisaibi img {
	position:absolute;
	bottom:0;
	right:0;
	max-height:100%
}

.supprt_css_btn_class {
	font-size:14px;
	font-weight:normal;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
	border:1px solid #268a16;
	text-decoration:none;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(5%, #77d42a), color-stop(100%, #5cb811) );
	background:-moz-linear-gradient( center top, #77d42a 5%, #5cb811 100% );
	background:-ms-linear-gradient( top, #77d42a 5%, #5cb811 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#77d42a', endColorstr='#5cb811');
	background-color:#77d42a;
	display:inline-block;
	text-shadow:1px 1px 0px #aade7c;
 	-webkit-box-shadow:inset 1px 1px 0px 0px #caefab;
 	-moz-box-shadow:inset 1px 1px 0px 0px #caefab;
 	box-shadow:inset 1px 1px 0px 0px #caefab;
}
.supprt_css_btn_class:hover {
	background:-webkit-gradient( linear, left top, left bottom, color-stop(5%, #5cb811), color-stop(100%, #77d42a) );
	background:-moz-linear-gradient( center top, #5cb811 5%, #77d42a 100% );
	background:-ms-linear-gradient( top, #5cb811 5%, #77d42a 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#5cb811', endColorstr='#77d42a');
	background-color:#5cb811;
}
.supprt_css_btn_class:active {
	position:relative;
	top:1px;
}
/* This css button was generated by css-button-generator.com */

.support_txt {
	margin-left:auto;
	margin-right:auto;
	position: relative;	/* IE用角丸(behavior: url("/PIE.htc");)を採用する場合はこの行は必須！ */
	padding-left:0px;
	padding-right:5px;
	padding-top:8px;
	padding-bottom:8px;
	background:#dff5d1;
	-moz-border-radius:20px;    /* 角丸　Firefox */
	-webkit-border-radius:20px; /* 角丸　Safari,Chrome */
	border-radius:20px;         /* 角丸　CSS3 */
	behavior: url("/PIE.htc");	/* 角丸　CSS3 IE対応用 */
	font-size:94%;
	border:2px solid #44801c;
}

.support_txt p {
	padding:0;
}
ul.tsup {
	margin:0 10px;
	padding:0px;
	display:flex;
	flex-wrap: wrap;
}
ul.tsup li {
	list-style: none;
	border:1px solid #a9a9a9;
	background-color:#f7f7f7;
	text-align:left;
	font-size:94%;
	padding:6px;
	margin:0;
	box-sizing: border-box;
}
ul#support_company li {
	width:270px;
}
ul#support_personal li {
	width:120px;
}

/* ========SUBCONTENTS CUSTOMIZE======== */
div#sidesub {
   margin-bottom:10px;
}

div#sidesub .audio {
	margin-left:auto;
	margin-right:auto;
	background:#1b69c7;
	padding:5px;
}
audio { width:210px; }

div#sidesub ul.menu {
	margin:2px 5px 0 0;
	padding:0;
	font-size:107%;/* 15px相当 */
	font-weight:bold;
	color:#FFF;
	background:#5bb925;
	border-bottom:1px solid #C1C1C1;
	border-right:1px solid #C1C1C1;
	list-style:none;
}
div#sidesub ul.menu>li {
	border:solid white;
	border-width:4px 0;
}

div#sidesub ul.menu a {
	display:block;
	font-size:92%;/* 15px相当 */
	font-weight:bold;
	color:#FFF;
	padding:2px 0 2px 15px;
}

div#sidesub ul.sub {
	width:100%;
	margin:2px 5px 0 0;
	padding:0;
}

div#sidesub ul.sub li {
   	padding:5px 0 5px 0;
   	font-size:88%;/* 14px相当 */
   	font-weight:bold;
   	line-height:1.4;
   	list-style:none;
   	background:#ecffce ;
   	border-bottom: dotted 1px black;
}

div#sidesub ul.sub li a {
	color:#38471f;
	font-weight:bolder;
	display:block;
	padding-left:12px;
	background:url("../images/bg_list.gif") 6px 6px no-repeat;
}
div#sidesub ul.menu li.active{
	background-color:lightgray;
	font-weight:bolder;
}

div#sidesub ul.menu li a.link:hover, div#sidesub ul.sub li a:hover {
	color:#FFF;
	font-weight:bolder;
	background:#ff4500 url("../images/bg_list_w.gif") 6px 6px no-repeat;
}


/* ========TOTOP CUSTOMIZE========= */
div#totop {
   margin:0 10px;
   text-align:right;
   font-size:70%;/* 11px相当 */
}

div#totop a {
   padding-left:22px;
   background: url("../images/bg_totop.gif") 0 50% no-repeat;
}

/* ========FOOTER CUSTOMIZE======== */
address {
	padding:10px;
	font-family:Verdana;
	font-size:82%;/* 13px相当 */
	font-weight:bold;
	color:#FFF;
	text-align:center;
	background:#5bb925;
}

div#footTxt {
	margin-left:auto;
	margin-right:auto;
	padding:0px 0 0 0;
	width: 787px;
	height:125px;
}

div#contact {
	font-size:70%;/* 11px相当 */
	color:#000000;
	margin:18px 0 0 0;
	float:left;
}

div#adobeplugin {
	font-size:63%;/* 10px相当 */
	color:#000000;
	margin:20px 0 0 0;
	float:right;
}

.counter {
	font-size:63%;/* 10px相当 */
	color:#000000;
}

@media screen and (max-width:825px) {
/*	.info {position:absolute; top:0; left:0; width:100%; height:100%; box-sizing:border-box;} */
/*	div#topimg {display:none;} */
	div#indexslideshow {padding:3px 0px;margin:0px;}
	div#indexslideshow img {width: 100%;}
	div#subtitleimg {width:100%; padding:0}
	div#contents {width:100%; padding:0;}
	div#aisatsu {margin:0 4px;}
	div#kaisaibi {padding-right:0;}
	div#kaisaibi img {display:none;}
	div#main {float:none; padding:0; width:100%; }
	div#main p {padding:2px;}
	div#main h2 {letter-spacing:-1.7px; line-height:initial;min-height:40px;}
	.tsup {width:100%;margin-left:3px;}
	.tinfo th {width:45px;}
	.tinfo td {width:initial;}
	iframe.info {padding:0;height:700px;}
	div#sidesub {float:none;width:initial;}
	div#footer {height:100%;}
	div#footTxt {width:100%; height:100%;}
	div#contact {float:none;}
	div#adobeplugin {float:none;}
	div#page {width:100%;}
	.privacy {width:100%; margin:2px;}
	.privacy ul {width:initial;}
	div#sitemap {margin:2px;}
	.contest table {margin-left:0;}
	.contest tr.taisho td:nth-child(odd), .contest tr.juntaisho td:nth-child(odd) {width: 80px;}
	.contest .narrow-left { width: initial; transform: initial;}

/* for slideshow */
	div#year {letter-spacing:-1px;}
	div#gallery {float:left; width:100%;}
	div#gallery .slideshow-container {width:100%;height:0;padding-top:66.6%;margin-left:0;}
	div#slideshow a.advance-link {width:98%; height:66%; line-height:0;}
	div#slideshow img {padding:0; margin:0; width:auto; height:66.6vw;}
	div#container { padding:0; }
	div#caption .image-caption {width:100%}
	div#caption .image-title {width:100%; margin:0}
	div#thumbs {width:100%;}
	div#thumbs .thumbs {width:100%; padding:0;}
	div#thumbs .thumbs li {margin:0;}
/* for slideshow end */
}

/* メール送信フォームのスマホ対応 */
@media screen and (max-width:480px) {
	table.mailform tr th,table.mailform tr td {display:block;}
	div#mailform p {margin:0;}
	table.mailform th {max-width: 800px};
}
/* ハンバーガーメニュー対応 */
@media screen and (max-width:825px){
	div#menu img#menu_logo {display:block;}
	/* menuを横幅いっぱいにする */
	div#menu ul.menu {width:100%;display:none;float:left;}
	div#menu ul.menu li {width:100%;}
	div#menu ul.menu li a {width:100%;}
	div#menu ul.menu li ul.sub {width:100%;}
	div#menu ul.menu li ul.sub a {width:100%;}
	/*開閉ボタン*/
	div#menu #menu_toggle{
		display: block;
		width: 40px;
		height: 42px;
		position: relative;
		top: 0px;
		z-index: 100;
		float:left;	
	}
	div#menu #menu_toggle div {
		position: relative;
	}
	div#menu #menu_toggle .bar{
		display: block;
		height: 3px;
		background: #fff;
		position:absolute;
		width: 80%;
		left: 3px;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;
	}
	div#menu #menu_toggle .bar:nth-child(1){
		top: 5px;
	}
	div#menu #menu_toggle .bar:nth-child(2){
		top: 13px;
	}
	div#menu #menu_toggle .bar:nth-child(3){
		top: 22px;
	}
	div#menu #menu_toggle .menu_str{
		font-size:11px;
		color:white;
		top:24px;
		position:absolute;
		left:2px;
		display:block !important;
	}
	/*開閉ボタンopen時*/
	div#menu.open #menu_toggle .bar:nth-child(1) {
		top: 12px;
	   -webkit-transform: rotate(135deg);
		-moz-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	div#menu.open #menu_toggle .bar:nth-child(2) {
		width: 0;
		left: 50%;
	}
	div#menu.open #menu_toggle .bar:nth-child(3) {
		top: 12px;
		-webkit-transform: rotate(-135deg);
		-moz-transform: rotate(-135deg);
		transform: rotate(-135deg);
	}
	/* ハンバーガーの時はメニューの開閉に合わせて以降のコンテンツをずらす */
	div#menu ul.menu ul {
		position: relative;
	}
}
@media screen and (min-width:826px){
	/* SlideToggleでdisplay:noneが生きてしまうためPC表示の時は強制的に表示 */
	div#menu ul.menu {display:block !important;}
}
