@charset "utf-8";
/* init */
/* CSS Document */
*, *:before, *:after {
  -webkit-box-sizing: content-box;
  box-sizing: content-box; /*paddingとborderを含めない*/
}
html {
  word-wrap: break-word;
  font-size: 62.5%;
  margin: 0;
  padding: 0;
}
body {
  background: rgb(255, 252, 254);
  background-image:
    url("../images/header-image.png"), url(../images/bg_img_pink.jpg), linear-gradient(180deg, rgba(255, 252, 254, 1) 0%, rgba(255, 247, 251, 1) 15%, rgba(235, 171, 205, 0.8458273121387283) 98%);
  background-position:
    top center, top center, top center;
  background-repeat:
    no-repeat, repeat-x, no-repeat;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  position: relative;
  color: #575757;
  font-size: 1.6rem;
  font-size: 100%;
  line-height: 1.5;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  -webkit-text-size-adjust: 100%;
  min-width: 960px;
}
/*.wrap{
  font-size: 1.6rem;
}*/
a img {
  border: none;
}
a:link {
  color: #218026;
  text-decoration: underline;
}
a:visited {
  color: #218026;
  text-decoration: underline;
}
a:hover {
  color: #A0D079;
  text-decoration: none;
}
/* レイアウト */
/* h1 */
h1 {
  font-size: 2.4rem;
}
#header {
  width: 900px;
  height: 763px;
  margin: 0 auto 50px;
  padding-top: 15px;
  text-align: center;
  /*background-image: url("../images/h1_2021.png");
    background-position: top 100px center;
    background-repeat: no-repeat;*/
  position: relative;
  line-height: 0;
}
.img_sakura {
  width: 900px;
  height: 390px;
  margin-top: 30px;
}
.img_sakura_container {
  /*display: flex; 
    justify-content: space-between;
    width: 900px;*/
}
.img_sakura_container img {
  margin: 0 3px;
}
#touhyo {
  position: absolute;
  top: 10px;
  left: 25px;
}
/* random-fade-in */ /* Required */
.box-container div p {
  display: none;
}
#flower_01 {
  position: absolute;
  width: 118px;
  height: 99px;
  z-index: 10;
  left: -32px;
  top: 307px;
}
#flower_02 {
  position: absolute;
  width: 118px;
  height: 153px;
  z-index: 11;
  left: 774px;
  top: 198px;
}
#flower_03 {
  position: absolute;
  width: 119px;
  height: 99px;
  z-index: 12;
  left: 271px;
  top: 735px;
}
#flower_04 {
  position: absolute;
  width: 91px;
  height: 88px;
  z-index: 13;
  left: 668px;
  top: -5px;
}
#flower_05 {
  position: absolute;
  width: 91px;
  height: 88px;
  z-index: 14;
  left: 789px;
  top: 654px;
}
/*#contents_bg {
    text-align: center;
    background-image: -webkit-linear-gradient(270deg,rgba(214,86,124,1.00) 3.11%,rgba(252,252,252,1.00) 28.50%,rgba(250,234,238,1.00) 83.94%);
    background-image: -moz-linear-gradient(270deg,rgba(214,86,124,1.00) 3.11%,rgba(252,252,252,1.00) 28.50%,rgba(250,234,238,1.00) 83.94%);
    background-image: -o-linear-gradient(270deg,rgba(214,86,124,1.00) 3.11%,rgba(252,252,252,1.00) 28.50%,rgba(250,234,238,1.00) 83.94%);
    background-image: linear-gradient(180deg,rgba(214,86,124,1.00) 3.11%,rgba(252,252,252,1.00) 28.50%,rgba(250,234,238,1.00) 83.94%);
    background-color: #faeaee;
}*/
/*#contents_bg {
    background-image: url("../images/bg_sakurasou.png"), url("../images/bg_sakurasou.png");
    background-position: center top, center bottom -50px;
    background-repeat: repeat-x, repeat-x;
    overflow: hidden;
}*/
#contents_wrapper {
  width: 900px;
  margin: 0 auto;
  text-align: left;
  background-color: hsla(0, 0%, 100%, 0.0);
}
#content_center {
  position: relative;
}
#flower_06 {
  position: absolute;
  width: 91px;
  height: 88px;
  z-index: 15;
  left: 365px;
  top: 544px;
}
#flower_07 {
  position: absolute;
  width: 91px;
  height: 88px;
  z-index: 16;
  left: -38px;
  top: 531px;
}
#flower_08 {
  position: absolute;
  width: 91px;
  height: 88px;
  z-index: 17;
  left: 821px;
  top: 165px;
}
#contents_center {
  background-color: rgba(255, 255, 255, 0.55);
  width: 856px;
  padding: 20px;
  border-radius: 10px;
  border: 2px solid #fff;
  margin-bottom: 20px;
  position: relative;
  font-size: 1.4rem;
}
#content_in {
  width: 900px;
  margin: 50px auto;
}
#contents_lr_wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
#contents_left, #contents_right {
  width: 440px;
}
#contents_left {
  /*float: left;*/
}
#contents_right {
  /* float: right;*/
  margin-bottom: 30px;
}
#announce {
  background-color: #fff;
  color: #000;
  width: 856px;
  padding: 10px;
  border: 1px solid #fff;
  margin: 30px auto 0px auto;
  font-size: 1.6rem;
}
#announce2 {
  background-color: #FBEDED;
  color: #D30202;
  width: 856px;
  padding: 10px;
  border: 3px solid #D30202;
  margin: 30px auto 0px auto;
  font-size: 1.6rem;
}
#cont2ents_center {
  background-color: rgba(255, 255, 255, 0.65);
  width: 856px;
  padding: 20px;
  border-radius: 10px;
  border: 2px solid #f5d0e2;
  margin: 30px auto 40px auto;
  /*margin: 60px auto 40px auto;*/
  position: relative;
  font-size: 1.6rem;
}
#lead p {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.6;
  padding: 1rem 4rem 2rem 4rem;
  text-align: justify;
}
#midokoro p {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
  padding: 0 0 2rem 3rem;
  width: 560px;
  margin-top: 0.5em;
}
div #kaijyo1, #kaijyo2 {
  text-align: center;
  color: #565656;
  border: solid 2px #fff;
  background-color: hsla(326, 61%, 91%, 0.90);
  border-radius: 8px;
  padding: .4rem .8rem;
  font-size: 1.6rem;
  font-weight: 600;
  margin-left: 2rem;
}
div #kaijyo1 {
  width: 10em;
  display: inline-block;
}
div #kaijyo2 {
  width: 19em;
}
div #tyushi {
  display: inline-block;
  width: 200px;
  text-align: center;
  color: #fff;
  border: solid 1px #D10707;
  background-color: #D10707;
  border-radius: 20px;
  padding: .6rem .8rem;
  font-size: 1.8rem;
  font-weight: 600;
  margin-left: 2rem;
}
.tyushi2 {
  display: inline-block;
  width: 4em;
  text-align: center;
  color: #fff;
  border: solid 1px #D10707;
  background-color: #D10707;
  border-radius: 20px;
  padding: .6rem .8rem;
  font-size: 1.8rem;
  font-weight: 600;
  position: absolute;
  left: 300px;
  top: 30px;
}
.tyushi3 {
  display: inline-block;
  width: 4em;
  text-align: center;
  color: #fff;
  border: solid 1px #D10707;
  background-color: #D10707;
  border-radius: 20px;
  padding: .6rem .8rem;
  font-size: 1.8rem;
  font-weight: 600;
  position: absolute;
  left: 260px;
  top: 30px;
}
/*#contents_center2 {
    width: 900px;
    margin: 0px auto 40px auto;
    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.55);
  width: 410px;
  padding-top: 20px;
  padding-right: 13px;
  padding-left: 13px;
  padding-bottom: 27px;
  border-radius: 10px;
  border: 2px solid #fff;
  /*border: 2px solid #f5d0e2;*/
  margin-bottom: 20px;
  position: relative;
  font-size: 1.4rem;
}
.contents_3col {
  background: #fef6fa;
  border: 1px solid #f8cbdf;
  padding: 25px 0 15px 17px;
  margin-bottom: 20px;
  position: relative;
}
/* h2 */
h2 {
  font-size: 1.8rem;
  font-weight: 600;
  color: #E61673;
	margin-top: 0;
}
h2 span {
  display: block;
  height: 0px;
  overflow: hidden;
  background-repeat: no-repeat;
}
#contents_left #gaiyou h2 {
  background-image: url(../images/ttl_gaiyo.png);
  background-repeat: no-repeat;
  background-size: contain;
  padding: 43px 0 0 0;
}
#contents_right #access h2 {
  background-image: url(../images/ttl_access.png);
  background-repeat: no-repeat;
  background-size: contain;
  padding: 43px 0 0 0;
}
/*#contents_right #ninki h2 {
    background-image: url("../images/ttl_touhyou.png");
    background-repeat: no-repeat;
    background-size: contain;
    padding: 39px 0 0 0;
}
#contents_right #vote h2 {
    background-image: url("../images/ttl_2019vote.png");
    background-repeat: no-repeat;
    background-size: contain;
    padding: 39px 0 0 0;
}*/
#contents_right #hanbai h2 {
  background-image: url(../images/ttl_hanbai.png);
  background-repeat: no-repeat;
  background-size: contain;
  padding: 43px 0 0 0;
}
#contents_right #download h2 {
  background-image: url(../images/ttl_download.png);
  background-repeat: no-repeat;
  background-size: contain;
  padding: 43px 0 0 0;
}
/*#contents_right #kanrenevent h2 {
    background-image: url("../images/ttl_kanrenevent.png");
    background-repeat: no-repeat;
    background-size: contain;
    padding: 29px 0 0 0;
}*/
#contents_left #kenkyu h2 {
  background-image: url("../images/ttl_kenkyu.png");
  background-repeat: no-repeat;
  background-size: contain;
  padding: 43px 0 0 0;
}
#contents_right #movie h2 {
  background-image: url("../images/ttl_movie.png");
  background-repeat: no-repeat;
  background-size: contain;
  padding: 43px 0 0 0;
}
/* h3 */
h3 {
  color: #E61673;
  line-height: 1.2em;
  font-size: 1.6rem;
  margin-left: 1rem;
}
h3 span {
  display: block;
  height: 0px;
  overflow: hidden;
  background-repeat: no-repeat;
}
#lead h3 {
  background-image: url("../images/text_01.png");
  background-repeat: no-repeat;
  background-size: contain;
  padding: 63px 0 0 0;
}
#midokoro h3 {
  background-image: url("../images/text_02.png");
  background-repeat: no-repeat;
  background-size: contain;
  padding: 27px 0 0 0;
}
#midokoro1 {
  background-image: url("../images/img_01.jpg");
  background-position: right top;
  background-repeat: no-repeat;
}
#midokoro2 {
  background-image: url("../images/img_02.jpg");
  background-position: right top;
  background-repeat: no-repeat;
}
h4 {
  font-weight: 600;
  font-size: 1.2em;
  color: #4E80BC;
  margin: 0.5em 0;
  text-shadow: 1px 1px 2px #fff;
}
/* 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;
  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: #FDF8Fb;
}
.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;
}
.table02 th {
  font-weight: normal;
  background-color: #fbf9fa;
}
.table02 td {
  background-color: #FFF;
}
.table02 td.fee {
  text-align: left;
  padding: 15px 0 15px 25px;
}
.table03 {
  width: 100%;
  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: #FDF8FB;
  padding: 5px 0px;
  text-align: left;
  vertical-align: middle;
}
.table04 th {
  color: #d72671;
  font-weight: normal;
  width: 5.5em;
  padding-left: 15px;
  padding-right: 15px;
}
.table04 td {
  padding-right: 15px;
}
.table01_hanbai {
  border-collapse: collapse;
  width: 386px;
}
.table01_hanbai td, .table01_hanbai th {
  border: 1px solid #aeaeae;
  text-align: center;
  vertical-align: middle;
  padding: 5px;
}
.table01_hanbai th {
  font-weight: normal;
  background-color: #fbf9fa;
  width: 23%;
}
.table01_hanbai td {
  background-color: #ffffff;
  text-align: left;
}
.table01_kenkyu {
  border-collapse: collapse;
  width: 100%;
}
.table01_kenkyu td, .table01_kenkyu th {
  border: 1px solid #aeaeae;
  vertical-align: middle;
  padding: 5px 8px;
}
.table01_kenkyu th {
  font-weight: normal;
  text-align: center;
  background-color: #fbf9fa;
  width: 24%;
}
.table01_kenkyu td {
  background-color: #ffffff;
  text-align: left;
}
.box01 {
  width: 386px;
  border: 1px solid #d2d2d2;
  background-color: #FFF;
  padding: 10px;
  margin-bottom: 15px;
  color: #333333;
  line-height: 1.2em;
  position: relative;
}
.box01_hanbai {
  width: 386px;
  border: 1px solid #d2d2d2;
  background-color: #FFF;
  padding: 20px 10px 10px 10px;
  margin-bottom: 15px;
  line-height: 1.2em;
  position: relative;
}
p.event-img {
  position: absolute;
  top: 8px;
  left: 322px;
}
.txt01 {
  padding: 0 15px 10px 15px;
  font-size: 1.2rem;
  line-height: 1.8em;
  text-align: left
}
.txt02 {
  padding: 5px 0 10px 5px;
  margin-bottom: 13px;
  /*background-image: ;
    background-position: right bottom;
    background-repeat: no-repeat;*/
}
.txt02 ul {
  margin-left: -2em;
}
.txt02 ul li {
  line-height: 1.8em;
}
.txt03 {
  text-align: left;
}
.txt04 {
  padding: 0 15px 10px 15px;
  text-align: left;
}
.sub_title {
  font-size: 1.2rem;
}
.sub_title span {
  color: #ec7aad;
  font-size: 1.4rem;
}
.sub-title_yoyaku_y {
  background-color: #E61673;
  margin-bottom: 0px;
  /*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
  font-size: 12px;
  line-height: 22px;
  width: 8em;
  color: #FFFFFF;
  text-align: center;
  border-radius: 3px;
  display: inline-block;
}
.name {
  color: #565656;
  font-size: 1.6rem;
}
.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.9em;
  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;
}
/*div.img_2019vote a {
    background : url("../images/btn_2019vote_off.png") no-repeat;
    display: block;
    width: 409px;
    height: 110px;
    text-indent: -9999px;
}
div.img_2019vote a:hover {
    background : url("../images/btn_2019vote_on.png") no-repeat;
}*/
#ueno_sakuraso {
  position: absolute;
  left: 303px;
  top: 5px;
}
/* footer */
#footer {
  width: 100%;
  clear: both;
  background: #D31B6B;
  margin-top: 0px;
  border-top: 1px solid #E61673;
}
#footer_in {
  width: 900px;
  height: 130px;
  margin: 0 auto;
  position: relative;
}

#page-top {
width: 92px;
  height: 30px;
  position: absolute;
  left: 807px;
  top: -32px;
  background-color: #D31B6B;
  border-left: 1px solid #E61673;
  border-right: 1px solid #E61673;
  border-bottom: 0px solid #E61673;
  border-top: 1px solid #E61673;
  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;
	cursor: pointer;
}
a.page-top {
/*width: 92px;
  height: 30px;
  position: absolute;
  left: 807px;
  top: -32px;
  background-color: #D31B6B;
  border-left: 1px solid #E61673;
  border-right: 1px solid #E61673;
  border-bottom: 0px solid #E61673;
  border-top: 1px solid #E61673;
  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 .page-top {
  background-color: #D31B6B;
	
}
.logo1 {
  width: 147px;
  height: 41px;
  position: absolute;
  top: 34px;
  left: 1px;
}
.logo2 {
  width: 163px;
  height: 41px;
  position: absolute;
  left: 176px;
  top: 36px;
}
.logo3 {
  width: 117px;
  height: 47px;
  position: absolute;
  top: 95px;
}
.support {
  width: 524px;
  color: #FFF;
  font-size: 1.2rem;
  text-align: left;
  position: absolute;
  left: 375px;
  top: 40px;
}
.cr {
  width: 550px;
  color: #FFF;
  font-size: 1.2rem;
  text-align: right;
  position: absolute;
  right: 1px;
  bottom: 5px;
}
/* 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;
  padding-left: 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: #d72c4e;
}
.txt.bold {
  font-weight: 600;
}
.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;
}
.nodisplay {
  display: none;
}
p.indent-1 {
  padding-left: 1em;
  text-indent: -1em;
}
/*socialPlugIn*/
.social {
  position: absolute;
  width: 220px;
  height: 35px;
  z-index: 6;
  left: 680px;
  top: -46px; /*	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;
}