@charset "utf-8";
/* init */
* {
	margin: 0;
	padding: 0;
}

h1 {

}

body {
    background-color: #FCFAF4;
    color: #666;
    font-size: 93%;
    line-height: 1.5em;
    font-family: sans-serif;
	min-width: 960px;
}
a img {
	border: none;
}
a:link {
	color: #7fc600;
	text-decoration: underline;
}
a:visited {
	color: #7fc600;
	text-decoration: underline;
}
a:hover {
}

/* レイアウト */
#mainImg {
    width: 900px;
    margin: 0 auto;
    position: relative;
    line-height: 0;
}
strong {
	line-height: 1.7em;
}
#touhyo {
    position: absolute;
    top: 309px;
    left: 87px;
}
#contents_bg {
    text-align: center;
    background-image: url(../images/contents_bg.png) ;
    background-repeat: repeat-x;
    background-position: top;
    background-color: #fffdfb;
}

#contents_bgIn {
    background-image: url(../images/sakura_bg_top.png) , url(../images/sakura_bg_bottom.png);
    background-position: center top, center bottom -150px;
    background-repeat: no-repeat, no-repeat;
    overflow: hidden;
	/*margin: 0 auto;*/
}

#contents_wrapper {
	width: 900px;
	margin: 0 auto;
	text-align: left;
}
#content_in {
	width: 900px;
	margin: 0 auto;
}
#contents_left, #contents_right {
	width: 440px;
}

	/* h2 */

h2{
	margin: 0 0 15px 10px;
	padding: 0;
	font-size: 1.4em;
    font-weight: 500;
    color: #d85098;
}

h2 span {
	display: block;
	height: 0px;
	overflow: hidden;
	background-repeat: no-repeat;
}

#contents_left #gaiyou h2 {
    background-image: url(../images/ttl_gaiyou.png);
    background-repeat: no-repeat;
	background-size: contain;
	padding: 23px 0 0 0;
}

#contents_left #access h2 {
    background-image: url(../images/ttl_access.png);
    background-repeat: no-repeat;
	background-size: contain;
	padding: 18px 0 0 0;
}

#contents_right #ninki h2 {
    background-image: url(../images/ttl_ninki.png);
    background-repeat: no-repeat;
	background-size: contain;
	padding: 43px 0 0 0;
}

#contents_right #2017vote h2 {
    display: none;
}

#contents_right #hanbai h2 {
    background-image: url(../images/ttl_hanbai.png);
    background-repeat: no-repeat;
	background-size: contain;
	padding: 23px 0 0 0;
}

#contents_right #download h2 {
    background-image: url(../images/ttl_download.png);
    background-repeat: no-repeat;
	background-size: contain;
	padding: 19px 0 0 0;
}


#contents_left {
	float: left;
}
#contents_right {
	float: right;
	margin-bottom: 30px;
}
.contents_1col {
	margin-bottom: 40px !important;
}
.contents_2col {
    /*background : url(../images/content_bg.png) bottom center no-repeat #fef6fa;*/
    background-color: rgba(255, 255, 255, 0.75);
    padding-top: 20px;
    padding-right: 13px;
    padding-left: 13px;
    padding-bottom: 27px;
    border-radius: 5px;
    border: 3px #fde1ed solid;
    position: relative;
}
.contents_3col {
	background : #fef6fa;
	border: 1px solid #f8cbdf;
	padding: 25px 0 15px 17px;
	margin-bottom: 20px;
	position: relative;
}

.contents_1col {
	width: 900px;
	margin-bottom: 20px;
}
.contents_2col {
	margin-bottom: 20px;
	width: 408px;
}

.hana0 {
    position: absolute;
    left: -48px;
    top: 860px;
    width: 189px;
    height: 97px;
}

.hana1 {
    position: absolute;
    right: -48px;
    top: -35px;
    width: 189px;
    height: 97px;
}

.hana2 {
    position: absolute;
    right: -22px;
    top: -44px;
    width: 189px;
    height: 97px;
}

.table01 {
	color: #333333;
	font-size: 0.9rem;
	border-collapse: collapse;
	width: 386px;
}
.table01 td, .table01 th {
	border: 1px solid #aeaeae;
	text-align: center;
	vertical-align: middle;
	padding: 5px;
}
.table01 th {
	font-weight: normal;
	background-color: hsla(43,64%,96%,0.95);
}
.table01 td {
	background-color: #ffffff;
}
.table02 {
	border-collapse: collapse;
	width: 100%;
}
.table02 td, .table02 th {
	border: 1px solid #aaa;
	text-align: center;
	vertical-align: middle;
	padding: 5px;
	font-size: 0.9rem;
}
.table02 th {
	font-weight: normal;
	background-color: hsla(43,64%,96%,0.95);
}
.table02 td {
	background-color: #FFF;
}
.table02 td.fee {
	text-align: left;
	padding: 15px 0 15px 25px;
}
.table03 {
	width: 100%;
	font-size: 0.9em;
	border-collapse: collapse;
	margin: 5px;
	border: none !important;
}
.table03 th, .table03 td {
	border-top: none;
	border-bottom: 1px dotted #ddd;
	border-left: none !important;
	border-right: none !important;
	background-color: #FFF;
	padding: 5px 0 !important;
	;
	text-align: left;
	vertical-align: middle;
}
.table03 th {
	font-weight: normal;
	width: 35%;
	padding-left: 10px;
}
.table03 td {
	padding-right: 15px;
}
.table04 {
	border-collapse: collapse;
	width: 100%;
}
.table04 th, .table04 td {
    border-top: 1px dotted #f2a4c6;
    border-bottom: 1px dotted #f2a4c6;
    background-color: hsla(43,64%,96%,0.95);
    padding: 5px 0px;
    text-align: left;
    vertical-align: middle;
}
.table04 th {
    color: #d85098;
    font-weight: normal;
    width: 4.5em;
    padding-left: 15px;
    padding-right: 15px;
}
.table04 td {
	padding-right: 15px;
}
.box01 {
	width: 386px;
	border: 1px solid #d2d2d2;
	background-color: #FFF;
	padding: 20px 10px 10px 10px;
	margin-bottom: 15px;
	color: #333333;
	line-height: 1.2em;
	position: relative;
}
p.event-img {
	position: absolute;
	top: 8px;
	left: 322px;
}
.txt01 {
	padding: 0 15px 10px 15px;
	font-size: 95%;
	line-height: 1.8em;
	text-align: left
}
.txt04 {
	padding: 0 15px 10px 15px;
	font-size: 95%;
	line-height: 1.8em;
	text-align: center;
}
.txt04 p#text {
	text-align: left;
}
#btn a {
	display: block;
	width: 300px;
	background: -moz-linear-gradient(top, rgba(255,255,255,0.3), rgba(247,199,219,0.8)); /* Firefox用 */
	background: -o-linear-gradient(rgba(255,255,255,0.3), rgba(247,199,219,0.8)); /* Opera */
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,0.3)), to(rgba(247,199,219,0.8))); /* Safari,Google Chrome用 */
	background: linear-gradient(top, rgba(255,255,255,0.3), rgba(247,199,219,0.8));
	color: #4e4c4b;
	border: 2px solid #DDD;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-box-shadow: 1px 1px 1px rgba(000,000,000,0.3);
	-webkit-box-shadow: 1px 1px 1px rgba(000,000,000,0.3);
	padding: 10px 0;
	text-align: center;
	margin-top: 15px;
	margin-left: auto;
	margin-right: auto;
	text-decoration: none;
	text-shadow: 0 0 3px #FFF,  0 0 3px #FFF,  0 0 0.3px #FFF;
}
#btn a:hover {
	background: -moz-linear-gradient(top, rgba(255,255,255,0.3), rgba(248,254,236,0.8)); /* Firefox用 */
	background: -o-linear-gradient(rgba(255,255,255,0.3), rgba(248,254,236,0.8)); /* Opera */
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(246,255,255,0.3)), to(rgba(248,254,236,0.8))); /* Safari,Google Chrome用 */
	background: linear-gradient(top, rgba(255,255,255,0.3), rgba(248,254,236,0.8));
	text-shadow: 0 0 3px #eee,  0 0 3px #eee,  0 0 0.3px #eee;
}
 @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
#btn a:not(:target) {
	background: linear-gradient(to bottom, #fff, #f7c7db);
}
#btn a:hover:not(:target) {
	background: linear-gradient(to bottom, #fff, #dbc5f8);
}
}
.txt02 {
	padding: 5px 0 10px 5px;
	margin-bottom: 13px;
	font-size: 95%;
	line-height: 1.7em;
}
.sub_title {
	font-size: 1.2em;
}
.sub_title span {
	color: #ec7aad;
	font-size: 1.5em;
}
.name {
	color: #565656;
}
.gmap {
	margin: 15px 0 5px;
}
.gmap p {
	text-align: right;
	font-size: 85%;
}
.gmap_in {
	border: solid 1px #cebbbb;
}
.box_dl1 a, .box_dl2 a {
	display: block;
	width: 238px;
	height: 57px;
	padding: 50px 20px 0 150px;
	background-repeat: no-repeat;
	color: #333333;
	font-size: 0.9rem;
	line-height: 1.2em;
	text-decoration: none;
}
.box_dl1 a:link, .box_dl2 a:link, .box_dl1 a:visited, .box_dl2 a:visited, .box_dl1 a:hover, .box_dl2 a:hover {
	color: #333333;
	text-decoration: none;
}
.box_dl1 a {
	background-image: url(../images/btn_dl_off.png);
	background-repeat: no-repeat;
}
.box_dl1 a:hover {
	background-image: url(../images/btn_dl_on.png);
	background-repeat: no-repeat;
}

.img_2017vote a {
    background : url(../images/btn_2017vote.png) no-repeat; 
    display:block; 
    width:409px; 
    height:106px; 
    text-indent:-9999px;
}

.img_2017vote a:hover  {
    background : url(../images/btn_2017vote_h.png) no-repeat; 
}

#footer {
    width: 100%;
    clear: both;
    background: #d85098;
    margin-top: 0px;
    border-top: 1px solid #e50e83;
}

#footer_in {
    width: 900px;
    height: 180px;
    margin: 0 auto;
    position: relative;
}
.logo1 {
	width: 145px;
	height: 41px;
	position: absolute;
	top: 34px;
	left: 1px;
}
.logo2 {
	width: 163px;
	height: 34px;
	position: absolute;
	left: 176px;
	top: 37px;
}
.logo3 {
	width: 117px;
	height: 47px;
	position: absolute;
	top: 95px;
}
.support {
    width: 524px;
    color: #FFF;
    font-size: 0.83em;
    text-align: left;
    position: absolute;
    left: 375px;
    top: 40px;
}
.cr {
    width: 550px;
    color: #FFF;
    font-size: 0.8rem;
    text-align: right;
    position: absolute;
    right: 1px;
    top: 146px;
}
.totop {
    width: 92px;
    height: 28px;
    position: absolute;
    left: 808px;
    top: -29px;
}
/* padding margin */
.maT5B10 {
	margin-top: 5px;
	margin-bottom: 10px;
}
.maT20 {
	margin-top: 20px;
}
.maT15 {
	margin-top: 15px;
}
.maT5 {
	margin-top: 5px;
}
.ma_top5 {
	margin-top: 5px;
}
.maB30 {
	margin-bottom: 30px;
}
.maB20 {
	margin-bottom: 20px;
}
.maB15 {
	margin-bottom: 15px;
}
.maB10 {
	margin-bottom: 10px;
}
.maB0 {
	margin-bottom: 0px;
}
.pa_btm10 {
	padding-bottom: 10px;
}
.pa_t5 {
	padding-top: 5px;
}
/* テキスト装飾 */
.small {
	font-size: 90%;
}
.note {
	color: #e14a68;
}
.align_right {
	text-align: right;
}
.align_center {
	text-align: center;
}
.day {
	color: #919324;
	font-size: 90%;
}
.fri {
	color: #b7ad17;
	font-size: 90%;
}
.sat {
	color: #5d86b4;
	font-size: 90%;
}
.sun {
	color: #e481a2;
	font-size: 90%;
}
/*その他 */
.clear {
	clear: both;
}

.hide-text { 
   /* text-indent: 100%; */
    white-space: nowrap; 
    overflow: hidden; 
}

/*socialPlugIn*/
.social {
    position: absolute;
    width: 220px;
    height: 35px;
    z-index: 6;
    left: 674px;
    top: 852px;
/*	float: right;
	width: 410px;
	height: 35px;
	margin-right: 50px;
	margin-top: -170px;
	z-index: 5;*/
}
.social div {
	float: right;
}
.twitter {
	color: #000;
	margin: 0 -40px 0 15px;
}
.line {
	margin: -5px 0 0 15px;
}

#mainImg .social .sns-wrap {
    list-style: none;
}

.nowrap {
    white-space: nowrap;
}
