@charset "utf-8";
/* init */
* {
    margin: 0;
    padding: 0;
}


body {
    background-color: #fcf9fa;
    color: #666;
    font-size: 93%;
    line-height: 1.5em;
    font-family: sans-serif;
}
a img {
    border: none;
}


a:link {
    color: #7fc600;
    text-decoration: underline;
}
a:visited {
    color: #7fc600;
    text-decoration: underline;
}
a:hover {
}
/* レイアウト */

h1 {
}
#mainImg {
    width: 900px;
    margin-top: 0;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 60px;
    position: relative;
    line-height: 0;
}
#koushiki{
    width: 210px;
    height: 126px;
    position: absolute;
    top: -2px;
    right: 0px;
}
#touhyo {
    position: absolute;
    top: 309px;
    left: 87px;
}
#contents_bg {
    text-align: center;
    background-image: -webkit-linear-gradient(270deg,rgba(252,249,250,1.00) 29.53%,rgba(249,210,219,1.00) 100%);
    background-image: -moz-linear-gradient(270deg,rgba(252,249,250,1.00) 29.53%,rgba(249,210,219,1.00) 100%);
    background-image: -o-linear-gradient(270deg,rgba(252,249,250,1.00) 29.53%,rgba(249,210,219,1.00) 100%);
    background-image: linear-gradient(180deg,rgba(252,249,250,1.00) 29.53%,rgba(249,210,219,1.00) 100%);
}
#contents_bgIn {
    background-image: url("../images/bg_stripe.png"),url("../images/bg_sakuraso.png"), url("../images/bg_sakuraso.png");
    background-position: center top, center 434px, center bottom -10px;
    background-repeat: repeat, no-repeat, repeat-x;
    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;
}
#contents_left {
    float: left;
}
#contents_right {
    float: right;
    margin-bottom: 30px;
}
#contents_center {
    width: 900px;
    margin: 0 auto;
    margin-bottom: 40px;
    text-align: center;
    position: relative;
}
.contents_1col {
    width: 900px;
    margin-bottom: 40px;
}
.contents_2col {
    /*background : url(../images/content_bg.png) bottom center no-repeat #fef6fa;*/
    background-color: rgba(255,255,255,0.80);
    width: 406px;
    padding-top: 20px;
    padding-right: 15px;
    padding-left: 15px;
    padding-bottom: 20px;
    border-radius: 5px;
    border: 2px #f8688e solid;
    margin-bottom: 20px;
    position: relative;
}
.contents_3col {
    background : #fef6fa;
    border: 1px solid #f8cbdf;
    padding: 25px 0 15px 17px;
    margin-bottom: 20px;
    position: relative;
}
/* 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: 36px 0 0 0;
}

#contents_left #kanren_event h2 {
    background-image: url("../images/ttl_kanren_event.png");
    background-repeat: no-repeat;
    background-size: contain;
    padding: 36px 0 0 0;
}

#contents_right #access h2 {
    background-image: url(../images/ttl_access.png);
    background-repeat: no-repeat;
    background-size: contain;
    padding: 36px 0 0 0;
}

#contents_right #download h2 {
    background-image: url(../images/ttl_download.png);
    background-repeat: no-repeat;
    background-size: contain;
    padding: 36px 0 0 0;
}

#kanren_event h3 {
    color: #c60e19;
    text-align: left;
    font-size: 1em;
    line-height: 1.8em;
}
#kanren_event h3 span {
    font-size: 1.4em;
}
#tbg_sakura {
    width: 88px;
    height: 124px;
    position: absolute;
    top: 9px;
    left: 312px;
}

/* hana */

.hana0 {
    position: absolute;
    left: -48px;
    top: -30px;
    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;
}

/* table */

.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: #fbe9ee;
    padding: 5px 0px;
    text-align: left;
    vertical-align: middle;
}
.table04 th {
    color: #d85098;
    font-weight: normal;
    width: 5.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
}
.txt02 {
    padding: 5px 0 10px 5px;
    margin-bottom: 13px;
    font-size: 95%;
    line-height: 1.7em;
}
.txt04 {
    padding: 0 15px 10px 15px;
    font-size: 95%;
    line-height: 1.8em;
    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);
}
}


.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;
}


/*.totop {
    width: 92px;
    height: 28px;
    position: absolute;
    left: 808px;
    top: -29px;
}*/

/* footer */

#footer {
    width: 100%;
    clear: both;
    background: #514e4d;
    margin-top: 0px;
    border-top: 1px solid #514e4d;
}
#footer_in {
    width: 900px;
    height: 180px;
    margin: 0 auto;
    position: relative;
}

.totop {
    width: 92px;
    height: 30px;
    position: absolute;
    left: 807px;
    top: -27px;
}
a .totop_02 {
    width: 92px;
    height: 30px;
    position: absolute;
    left: 807px;
    top: -27px;
    background-color: #514e4d;
    border-left: 1px solid #514e4d;
    border-right: 1px solid #514e4d;
    border-bottom: 0px solid #514e4d;
    border-top: 1px solid #514e4d;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background-image: url(../images/btn_totop_in.png);
    background-repeat: no-repeat;
    background-position: center 8px;
}
a:hover .totop_02 {
    background-color: #514e4d;
}

.logo1 {
    width: 147px;
    height: 41px;
    position: absolute;
    top: 34px;
    left: 1px;
}
.logo2 {
    width: 206px;
    height: 42px;
    position: absolute;
    left: 10px;
    top: 36px;
}
.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;
}

/* 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;
}
.maB40 {
    margin-bottom: 40px;
}
.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;
}
/* テキスト装飾 */
strong {
    line-height: 1.7em;
}
.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;
}
