@charset "UTF-8";
/*--------------------------------------------------------------------
// config
--------------------------------------------------------------------*/
/*--------------------------------------------------------------------
// base
--------------------------------------------------------------------*/
html {
  font-size: 62.5%;
  height: 100%;
  min-width: 320px; }

body {
  position: relative;
  font-size: 1.6em;
  line-height: 1.4;
  height: 100%;
  margin: 0;
  padding: 0;
  line-break: strict;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  color: #333;
  /*background-color: $col-base-bg;*/
  font-family: 'Avenir','Helvetica Neue','Helvetica','Arial',"メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif; }
  body::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 400px;
    content: "";
    z-index: -10;
    background: linear-gradient(to bottom, #F6C1CB 0%, #fff 200px, #fff 100%); }

h1, h2, h3, h4, h5, h6, p,
dl, ul, ol, table, blockquote {
  font-size: 1em;
  margin: 0;
  padding: 0; }

dt, dd, li {
  margin: 0;
  padding: 0; }

ul, ol {
  list-style: none; }

img {
  vertical-align: top;
  border: none; }

a:link, a:visited {
  text-decoration: none; }
a:hover, a:active {
  text-decoration: underline; }

em {
  font-style: normal; }

h1, h2, h3, h4, h5, h6, strong {
  font-weight: bold; }

.none {
  display: none; }

@media screen and (max-width: 767px) {
  .is_pc {
    display: none !important; } }
@media screen and (min-width: 768px) {
  .is_mobile {
    display: none !important; } }
.left {
  text-align: left; }

.center {
  text-align: center; }

.right {
  text-align: right; }

.clear {
  clear: both; }

.nolink {
  text-decoration: none !important; }

/*--------------------------------------------------------------------
// common
--------------------------------------------------------------------*/
body[id^="ume"]::before {
  background: linear-gradient(to bottom, #FFDEC9 0%, #fff 200px, #fff 100%); }

body[id^="sakura"]::before {
  background: linear-gradient(to bottom, #FAD7E0 0%, #fff 200px, #fff 100%); }

.bg-wrap {
  background: url("../img/bg_umesakura.png") no-repeat -7.2% 6px;
  background-size: 100%;
  text-align: center;
  position: relative; }
  .bg-wrap::after {
    position: absolute;
    top: 20px;
    right: 0;
    width: 140px;
    height: 100px;
    content: "";
    z-index: 2; }
    body#ume .bg-wrap::after {
      background: url("../ume/2022/img/stamp_ume_2022.png") no-repeat;
      background-size: contain; }
    body#sakura .bg-wrap::after {
      background: url("../sakura/2022/img/stamp_sakura_2022.png") no-repeat;
      background-size: contain; }
    @media screen and (min-width: 768px) {
      .bg-wrap::after {
        top: 50px;
        width: 34%;
        height: 160px; } }
  @media screen and (min-width: 768px) {
    .bg-wrap {
      text-align: left;
      background-position: 0 60px; } }

.notice {
  width: 70%;
  margin: 10% auto;
  background-color: #FFFFF0;
  border: 2px solid #A0522D;
  border-radius: 10px;
  text-align: center; }
  @media screen and (min-width: 768px) {
    .notice {
      width: 86%; } }
  .notice p {
    display: inline-block;
    font-size: 1.125em;
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
    color: #A0522D;
    font-weight: bold;
    text-align: left;
    position: relative;
    padding: 65px 1.5em 1.5em; }
    .notice p::before {
      content: "\f06a";
      font-family: "Font Awesome 5 Free";
      color: #DD2121;
      font-size: 4rem;
      font-weight: 900;
      line-height: 1;
      position: absolute;
      top: 15px;
      left: 50%;
      transform: translateX(-50%);
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%); }
    @media screen and (min-width: 768px) {
      .notice p.col {
        padding: 1.5em 1.5em 1.5em 80px; }
        .notice p.col::before {
          top: 50%;
          left: 25px;
          transform: translateY(-50%);
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%); } }

.notice-b {
  width: 80%;
  display: inline-block;
  background-color: #FFFFF0;
  border: 2px solid #A0522D;
  border-radius: 10px;
  padding: 2em 1.8em;
  text-align: left; }
  #ume .notice-b,
  #sakura .notice-b{
    margin-top: 0; }
  @media screen and (min-width: 768px) {
    .notice-b {
      width: 33%; } }
  .notice-b h2 {
    color: #A0522D;
    font-size: 1.125em;
    text-align: center;
    margin-bottom: 1em; }
  .notice-b p {
    line-height: 1.4;
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif; }
  .notice-b .golink {
    text-align: center;
    padding-top: 1em; }
    .notice-b .golink a {
      display: inline-block;
      text-align: left;
      font-weight: bold;
      padding-right: 4rem;
      position: relative;
      color: #5C3737; }
      .notice-b .golink a::after {
        content: "\f0a9";
        font-family: "Font Awesome 5 Free";
        color: #AA8585;
        font-size: 3.5rem;
        font-weight: 900;
        position: absolute;
        bottom: 0;
        right: 0; }

.link-btn a {
  display: inline-block;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  font-size: 1.125em;
  font-weight: bold;
  padding: .8em 3em .8em 1.8em;
  border-radius: 1em;
  color: #5C3737;
  background-color: #FDF0E3;
  border: 4px solid #FDF0E3;
  position: relative; }
  #sakura .link-btn a {
    background-color: #FDEBF0;
    border: 4px solid #FDEBF0; }
  .link-btn a::before {
    content: "\f04b";
    font-family: "Font Awesome 5 Free";
    color: #AA8585;
    font-size: 1em;
    font-weight: 900;
    position: absolute;
    right: 1.4em; }
  .link-btn a:hover, .link-btn a:active {
    text-decoration: none;
    border: 4px solid rgba(170, 133, 133, 0.15) !important; }

.sublink .link li a {
  display: block;
  background-color: #F5F5F5;
  border-top: 2px solid #FAF8F8;
  border-bottom: 2px solid #EDE5E5;
  font-size: 1.125em;
  padding: 1.5em 1em 1.5em 3.5em;
  text-align: left;
  position: relative; }
  @media screen and (min-width: 768px) {
    .sublink .link li a {
      background-color: transparent;
      border: none;
      padding: .7em .5em .7em 2em; } }
  .sublink .link li a::before {
    content: "\f04b";
    font-family: "Font Awesome 5 Free";
    color: #AA8585;
    font-size: 1em;
    font-weight: 900;
    position: absolute;
    left: 2em; }
    @media screen and (min-width: 768px) {
      .sublink .link li a::before {
        left: .5em; } }
@media screen and (min-width: 768px) {
  #hana .sublink .link {
    padding-bottom: 18px;
    margin-bottom: 15px;
    border-bottom: 3px dotted #e2e2e2; } }

/*--------------------------------------------------------------------
// umesakura共通-header
--------------------------------------------------------------------*/
header h1 {
  padding: 1.5rem 2rem 4rem;
  text-align: left; }
header a:hover, header a:active {
  text-decoration: none; }
@media screen and (max-width: 767px) {
  header .menulist {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: .6s;
    border-top: none;
    background-color: #FAD7DD; }
    header .menulist li {
      border-bottom: 3px dotted #fff; }
      header .menulist li a {
        display: block;
        font-size: 1.125em;
        font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
        font-weight: bold;
        padding: 1.4rem 5% 1.4rem;
        color: #743B0A; }
        header .menulist li a:hover, header .menulist li a:active {
          text-decoration: none;
          opacity: .7; }
    header .menulist .gotop.none {
      display: block; }
      header .menulist .gotop.none img {
        margin-top: 3rem;
        width: 16rem; } }
@media screen and (min-width: 768px) {
  header {
    width: 100%;
    max-width: 1024px;
    padding: 0 12px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    header img {
      height: 34px;
      width: auto; }
    header .menulist {
      font-size: 0;
      margin-bottom: 1.5rem;
      text-align: right; }
      header .menulist li {
        display: inline-block;
        border-right: 1px solid #333;
        padding-left: 3px;
        padding-right: 3px;
        margin: 4px 0; }
        header .menulist li:last-child {
          border: none; }
        header .menulist li a {
          font-size: 1.5rem;
          font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
          line-height: 1;
          color: #5C3737;
          font-weight: bold;
          padding: 5px 7px;
          border-radius: 10px; }
          header .menulist li a:hover {
            background-color: rgba(255, 255, 255, 0.7); }
        body#ume_list header .menulist li.nav_list a, body#ume_access header .menulist li.nav_access a {
          cursor: default; }
          body#ume_list header .menulist li.nav_list a:hover, body#ume_access header .menulist li.nav_access a:hover {
            background-color: transparent; } }

/*--------------------------------------------------------------------
// nav menu
--------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  #header_menu {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 3;
    /*  .menulist {
        height: 0;
        padding: 0;
        overflow: hidden;
        opacity: 0;
        transition: .6s;
        border-top: none;
        background-color: $col-menu-bg;
        li a {
          display: block;
          font-size: $fz-1;
          font-weight: bold;
          padding: 1.4rem 5% 1.4rem;
          border-bottom: 3px dotted #fff;
          color: $col-lead;
        }
        .gotop.none {
          display: block;
          img {
            margin-top: 3rem;
            width: 16rem;
          }
        }
      }*/ }
    #header_menu #menu-on {
      display: none; }
      #header_menu #menu-on:checked + label + .menulist {
        padding: 5rem 10% 2rem;
        height: auto;
        opacity: 1; }
      #header_menu #menu-on:checked + label .fa-bars {
        display: none; }
      #header_menu #menu-on:checked + label .fa-times {
        display: block; }
    #header_menu .fa-bars {
      position: absolute;
      top: 15px;
      right: 20px;
      font-size: 3rem;
      color: #765E5E;
      cursor: pointer; }
    #header_menu .fa-times {
      display: none;
      position: absolute;
      top: 16px;
      right: 27px;
      font-size: 34px;
      color: #fff;
      cursor: pointer; } }
/*--------------------------------------------------------------------
// umesakura共通-main
--------------------------------------------------------------------*/
main section {
  margin: 5% 0 8%; }

@media screen and (min-width: 768px) {
  main {
    width: 100%;
    max-width: 1024px;
    padding: 0 12px;
    margin: 0 auto; }

  #today h2 {
    padding-top: 100px; }
  #today .date, #today .log {
    float: right;
    width: 36%; }
  #today .photo {
    float: left;
    width: 64%;
    padding-top: 50px; }
  #today .log {
    margin-bottom: 0;
    padding: 1em 1.5em; }
    #sakura #today .log {
      padding-right: 0; }
    #today .log .txt {
      min-height: 5em;
      margin-bottom: 2em; }

  .notice-b {
    float: right;
    margin-left: 3%;
    margin-top: 3%; }

  #calendar {
    clear: both; } }
main .pagetitle {
  font-size: 2rem;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  text-align: left;
  border-bottom: 2px solid #C82C6C;
  color: #5C3737;
  padding: .5em;
  margin-bottom: 2em; }

#today h2 {
  font-size: 2rem;
  letter-spacing: .05em;
  font-weight: normal;
  margin-bottom: 3%; }
  #today h2 span {
    font-size: 2em;
    letter-spacing: .2em;
    vertical-align: middle;
    margin-left: .05em; }
  @media screen and (min-width: 768px) {
    #today h2 {
      font-size: 2.6rem;
      padding-left: 48px; } }
#today .photo p {
  margin-bottom: 6%;
  position: relative; }
  #today .photo p::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    border-top: 5px solid rgba(255, 255, 255, 0.6);
    border-bottom: 5px solid rgba(255, 255, 255, 0.6);
    z-index: 2; }
    @media screen and (min-width: 768px) {
      #today .photo p::before {
        border: 12px solid rgba(255, 255, 255, 0.6);
        border-radius: 5px; } }
#today .photo img {
  width: 100%; }
  @media screen and (min-width: 768px) {
    #today .photo img {
      border-radius: 5px; } }
#today .txt {
  text-align: right;
  margin-bottom: 6%;
  padding: 0 1.5em; }
  #today .txt p {
    display: inline-block;
    text-align: left;
    line-height: 1.6; }
  @media screen and (min-width: 768px) {
    #today .txt {
      text-align: left;
      padding-left: 48px; } }
  #today .txt a.golist {
    color: #E64386;
    text-decoration: none; }
    #today .txt a.golist:hover, #today .txt a.golist:active {
      text-decoration: none;
      opacity: .7; }

.message {
  display: inline-block;
  margin: 0 2em 2em;
  text-align: left;
  color: #666; }

#calendar h2 {
  font-size: 2rem;
  color: #9d8f8f;
  margin-bottom: .5em; }
#calendar ul {
  position: relative;
  width: 100%;
  padding-top: 108.673%;
  margin-bottom: 10%; }
  #sakura #calendar ul {
    padding-top: 90.816%; }
  #calendar ul::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    background: url("../ume/2022/img/ume-calendar_mobile.svg") no-repeat;
    background-size: 100%;
    z-index: -1; }
    #sakura #calendar ul::before {
      background: url("../sakura/2022/img/sakura-calendar_mobile.svg") no-repeat;
      background-size: 100%; }
  @media screen and (min-width: 768px) {
    #calendar ul {
      background-image: none;
      padding-top: 20% !important;
      margin-bottom: 40px;
      position: relative; }
      #calendar ul::before {
        position: absolute;
        top: 0;
        left: 0;
        content: "";
        width: 100%;
        height: 100%;
        background: url("../ume/2022/img/ume-calendar_pc.svg") no-repeat;
        background-size: 100%; }
        #sakura #calendar ul::before {
          background: url("../sakura/2022/img/sakura-calendar_pc.svg") no-repeat;
          background-size: 100%; } }
  #calendar ul li a {
    position: absolute;
    top: 0;
    left: 0;
    width: 12.76%;
    height: 11.74%;
    text-indent: -9999px;
    text-decoration: none; }
    @media screen and (max-width: 767px) {
      #sakura #calendar ul li a {
        height: 14.04%; } }
    #calendar ul li a:hover {
      border-radius: 50%;
      border: 6px solid #FFDEC9; }
      #sakura #calendar ul li a:hover {
        border: 6px solid #FAD7E0; }
    #calendar ul li a::before {
      position: absolute;
      top: 0;
      left: 0;
      content: "";
      width: 100%;
      height: 100%;
      border-radius: 50%;
      z-index: -2; }
    @media screen and (min-width: 768px) {
      #calendar ul li a {
        width: 6.09%;
        height: 30.46%; } }
@media screen and (min-width: 768px) {
  #calendar .link-btn {
    text-align: right; } }

/*--------------------------------------------------------------------
// sakura-main
--------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  #sakura .notice-b {
    margin-bottom: 1%; } }

#sakura_unique main {
  border-bottom: 3px dotted #e2e2e2;
  margin-bottom: 10%; }
  #sakura_unique main .map {
    width: 94%;
    margin: 0 auto;
    padding-bottom: 1.2em;
    position: relative; }
    @media screen and (min-width: 768px) {
      #sakura_unique main .map {
        width: 76%;
        min-width: 700px; } }
    #sakura_unique main .map img {
      width: 100%;
      margin-bottom: 1.2em; }
    #sakura_unique main .map .ni-original {
      display: inline-block;
      text-align: left;
      background: #fff url("../img/ico_ni.svg") no-repeat 12px 10px;
      padding: 20px 0 0 60px; }
      #sakura_unique main .map .ni-original li {
        margin: .8em 0; }
        #sakura_unique main .map .ni-original li a {
          text-decoration: none;
          position: relative;
          padding-left: 2.5rem;
          line-height: 2rem; }
          #sakura_unique main .map .ni-original li a::before {
            content: "\f0a9";
            font-family: "Font Awesome 5 Free";
            color: #AA8585;
            font-size: 2rem;
            font-weight: 900;
            margin-right: .2em;
            position: absolute;
            top: 0;
            left: 0; }
          #sakura_unique main .map .ni-original li a:hover {
            opacity: .7; }
      @media screen and (min-width: 680px) {
        #sakura_unique main .map .ni-original {
          position: absolute;
          top: 80%;
          right: 10px; } }

#sakura_sakuramap main {
  margin-bottom: 10%; }
  #sakura_sakuramap main .map {
    width: 100%; }
    #sakura_sakuramap main .map-img {
      width: 94%;
      max-width: 583px;
      margin: 0 auto 6%; }
      #sakura_sakuramap main .map-img img {
        width: 100%; }
    #sakura_sakuramap main .map-list {
      width: 94%;
      text-align: left;
      margin: 1.2em auto;
      counter-reset: number 0; }
      #sakura_sakuramap main .map-list article {
        border-bottom: 3px dotted #e2e2e2;
        padding: 1em 0; }
        #sakura_sakuramap main .map-list article h3 {
          font-size: 1.125em;
          font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
          line-height: 1.3;
          padding: .5em 0 .5em 2.2em;
          position: relative; }
          #sakura_sakuramap main .map-list article h3::before {
            position: absolute;
            top: 0;
            left: 0;
            width: 36px;
            height: 45.6px;
            padding-top: .35em;
            text-align: center;
            counter-increment: number 1;
            content: counter(number) " ";
            font-size: .8em;
            font-family: 'Arial Black','Verdana',sans-serif;
            font-weight: bold;
            color: #fff;
            background: transparent url("../sakura/sakuramap/img/ico_sakuratree.svg") no-repeat;
            background-size: 100%; }
          #sakura_sakuramap main .map-list article h3 span {
            font-size: 90%; }
        #sakura_sakuramap main .map-list article p {
          padding: .5em;
          font-size: 0.9375em; }
        #sakura_sakuramap main .map-list article .acs {
          background-color: #FFF8E8;
          padding: .7em .5em; }
      @media screen and (min-width: 768px) {
        #sakura_sakuramap main .map-list {
          width: 100%;
          display: flex;
          flex-wrap: wrap; }
          #sakura_sakuramap main .map-list article {
            display: flex;
            flex-direction: column;
            width: 20%;
            padding: 10px;
            border-right: 3px dotted #e2e2e2; }
            #sakura_sakuramap main .map-list article:nth-child(5n) {
              border-right: none; }
            #sakura_sakuramap main .map-list article h3 {
              flex-basis: 3.5em; }
            #sakura_sakuramap main .map-list article#map08-09 h3 {
              flex-basis: 1.5em; }
            #sakura_sakuramap main .map-list article .addr {
              flex-basis: 3.5em; }
            #sakura_sakuramap main .map-list article#map08-09 .addr {
              flex-basis: 1em; }
            #sakura_sakuramap main .map-list article .acs {
              flex-grow: 1; } }

/*--------------------------------------------------------------------
// sakura-spot
--------------------------------------------------------------------*/
.log .spot {
  position: relative;
  margin: 3% auto 5%;
  width: 80%;
  padding-top: 82.176%; }
  @media screen and (min-width: 768px) {
    .log .spot {
      width: 100%;
      padding-top: 102.72%; } }
  .log .spot::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    background: url("../sakura/img/sakura-spot.svg") no-repeat 50% 0;
    background-size: 100%; }
  .log .spot img {
    position: absolute;
    top: 0;
    left: 0;
    width: 13%;
    height: auto; }
  .log .spot .more {
    position: absolute;
    top: 70.69%;
    right: -2em;
    text-align: right; }
    @media screen and (min-width: 768px) {
      .log .spot .more {
        right: 0; } }
    .log .spot .more.link-btn a {
      padding: .5em 1em; }
      .log .spot .more.link-btn a::before {
        content: none; }

.log .spot-kk img {
  top: 0%;
  left: 52.63%; }

.log .spot-kk-e-n img {
  top: 0%;
  left: 62.11%; }

.log .spot-kk-e img {
  top: 1.54%;
  left: 61.58%; }

.log .spot-kk-w-n img {
  top: 0%;
  left: 43.68%; }

.log .spot-ks img {
  top: 17.95%;
  left: 60.53%; }

.log .spot-ks-w img {
  top: 18.97%;
  left: 47.37%; }

.log .spot-ks-w-n img,
.log .spot-ks-e-n img {
  top: 21.03%;
  left: 59.47%; }

.log .spot-s-w-n img {
  top: 25.64%;
  left: 43.16%; }

.log .spot-s-e-r img {
  top: 29.23%;
  left: 55.26%; }

.log .spot-s-e-n img {
  top: 47.69%;
  left: 51.05%; }

.log .spot-s-e img {
  top: 55.38%;
  left: 52.63%; }

.log .spot-s-e2 img {
  top: 53.33%;
  left: 52.63%; }

.log .spot-s-w img {
  top: 55.38%;
  left: 35.79%; }

.log .spot-k-n-w img {
  top: 61.03%;
  left: 36.84%; }

.log .spot-k img {
  top: 61.54%;
  left: 36.84%; }

.log .spot-k-e1 img {
  top: 61.54%;
  left: 50.53%; }

.log .spot-k-w-n img {
  top: 81.03%;
  left: 29.47%; }

.log .spot-k-w img {
  top: 83.08%;
  left: 29.47%; }

.log .spot-k-w-s img {
  top: 86.15%;
  left: 29.47%; }

.log .spot-k-e img {
  top: 82.56%;
  left: 52.63%; }

.log .spot-k-e-n img {
  top: 79.49%;
  left: 53.68%; }

.log .spot-k-e-s img {
  top: 87.18%;
  left: 52.11%; }

/*--------------------------------------------------------------------
// sakura-manner
--------------------------------------------------------------------*/
main .manner {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin-bottom: 15%; }
  main .manner .bnr_manner {
    width: 280px;
    height: 146px;
    margin: 2% 1%; }
    main .manner .bnr_manner ul {
      width: 280px;
      height: 146px;
      position: relative; }
  @media screen and (min-width: 768px) {
    main .manner {
      float: right;
      width: 36%;
      justify-content: flex-end;
      margin-bottom: 50px; } }

main .bnr_manner a {
  display: block;
  position: relative;
  width: 280px;
  height: 146px;
  text-indent: -5000px;
  text-decoration: none; }
  main .bnr_manner a:hover {
    opacity: 0.55;
    cursor: pointer; }
main .bnr_manner .omise a {
  background: url(../sakura/img/bnr_manner/bnr_omise.png) no-repeat;
  background-size: contain; }
main .bnr_manner .bbq a {
  background: url(../sakura/img/bnr_manner/bnr_bbq.png) no-repeat;
  background-size: contain; }
main .bnr_manner .bike a {
  background: url(../sakura/img/bnr_manner/bnr_bike.png) no-repeat;
  background-size: contain; }
main .bnr_manner .dance a {
  background: url(../sakura/img/bnr_manner/bnr_dance.png) no-repeat;
  background-size: contain; }
main .bnr_manner .gomi a {
  background: url(../sakura/img/bnr_manner/bnr_gomi.png) no-repeat;
  background-size: contain; }
main .bnr_manner .karaoke a {
  background: url(../sakura/img/bnr_manner/bnr_karaoke.png) no-repeat;
  background-size: contain; }
main .bnr_manner .tree a {
  background: url(../sakura/img/bnr_manner/bnr_tree.png) no-repeat;
  background-size: contain; }
main .bnr_manner .yoyaku a {
  background: url(../sakura/img/bnr_manner/bnr_yoyaku.png) no-repeat;
  background-size: contain; }
main .bnr_manner .tabaco a {
  background: url(../sakura/img/bnr_manner/bnr_tabaco.png) no-repeat;
  background-size: contain; }

.manner .pager {
  text-align: center; }
  .manner .pager a {
    background: url(../sakura/img/bnr_manner_pager.png) no-repeat;
    width: 14px;
    height: 14px;
    margin: 10px 2px 0px 2px;
    display: inline-block; }
    .manner .pager a.selected {
      background-position: 0px -14px; }
    .manner .pager a span {
      display: none; }

.manner button {
  white-space: nowrap;
  letter-spacing: 3em;
  overflow: hidden;
  width: 3rem;
  font-size: 2.8rem;
  font-weight: 900;
  color: #9d8f8f;
  opacity: .7;
  font-family: "Font Awesome 5 Free"; }
  .manner button::before {
    content: "\f28b"; }
  .manner button.paused::before {
    content: "\f144"; }
  .manner button:hover {
    opacity: .5; }

/*--------------------------------------------------------------------
// sakura-calendar
--------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  #calendar .day311 a {
    top: 9.83%;
    left: 1.79%; }
  #calendar .day312 a {
    top: 9.83%;
    left: 16.07%; }
  #calendar .day313 a {
    top: 9.83%;
    left: 30.36%; }
  #calendar .day314 a {
    top: 9.83%;
    left: 44.64%; }
  #calendar .day315 a {
    top: 9.83%;
    left: 58.93%; }
  #calendar .day316 a {
    top: 9.83%;
    left: 73.21%; }
  #calendar .day317 a {
    top: 9.83%;
    left: 87.5%; }
  #calendar .day318 a {
    top: 28.93%;
    left: 1.79%; }
  #calendar .day319 a {
    top: 28.93%;
    left: 16.07%; }
  #calendar .day320 a {
    top: 28.93%;
    left: 30.36%; }
  #calendar .day321 a {
    top: 28.93%;
    left: 44.64%; }
  #calendar .day322 a {
    top: 28.93%;
    left: 58.93%; }
  #calendar .day323 a {
    top: 28.93%;
    left: 73.21%; }
  #calendar .day324 a {
    top: 28.93%;
    left: 87.5%; }
  #calendar .day325 a {
    top: 48.03%;
    left: 1.79%; }
  #calendar .day326 a {
    top: 48.03%;
    left: 16.07%; }
  #calendar .day327 a {
    top: 48.03%;
    left: 30.36%; }
  #calendar .day328 a {
    top: 48.03%;
    left: 44.64%; }
  #calendar .day329 a {
    top: 48.03%;
    left: 58.93%; }
  #calendar .day330 a {
    top: 48.03%;
    left: 73.21%; }
  #calendar .day331 a {
    top: 48.03%;
    left: 87.5%; }
  #calendar .day401 a {
    top: 67.13%;
    left: 1.79%; }
  #calendar .day402 a {
    top: 67.13%;
    left: 16.07%; }
  #calendar .day403 a {
    top: 67.13%;
    left: 30.36%; }
  #calendar .day404 a {
    top: 67.13%;
    left: 44.64%; }
  #calendar .day405 a {
    top: 67.13%;
    left: 58.93%; }
  #calendar .day406 a {
    top: 67.13%;
    left: 73.21%; }
  #calendar .day407 a {
    top: 67.13%;
    left: 87.5%; }
  #calendar .day408 a {
    top: 86.24%;
    left: 1.79%; }
  #calendar .day409 a {
    top: 86.24%;
    left: 16.07%; }
  #calendar .day410 a {
    top: 86.24%;
    left: 30.36%; }
  #calendar .day411 a {
    top: 86.24%;
    left: 44.64%; }
  #calendar .day412 a {
    top: 86.24%;
    left: 58.93%; }
  #calendar .day413 a {
    top: 86.24%;
    left: 73.21%; }
  #calendar .day414 a {
    top: 86.24%;
    left: 87.5%; } }
@media screen and (min-width: 768px) {
  #calendar .day304 a {
    top: 1.02%;
    left: 4.06%; }
  #calendar .day305 a {
    top: 1.02%;
    left: 10.96%; }
  #calendar .day306 a {
    top: 1.02%;
    left: 17.77%; }
  #calendar .day307 a {
    top: 1.02%;
    left: 24.77%; }
  #calendar .day308 a {
    top: 1.02%;
    left: 31.68%; }
  #calendar .day309 a {
    top: 1.02%;
    left: 38.58%; }
  #calendar .day310 a {
    top: 1.02%;
    left: 45.48%; }
  #calendar .day311 a {
    top: 1.02%;
    left: 52.39%; }
  #calendar .day312 a {
    top: 1.02%;
    left: 59.29%; }
  #calendar .day313 a {
    top: 1.02%;
    left: 66.19%; }
  #calendar .day314 a {
    top: 1.02%;
    left: 73.1%; }
  #calendar .day315 a {
    top: 1.02%;
    left: 80%; }
  #calendar .day316 a {
    top: 1.02%;
    left: 86.9%; }
  #calendar .day317 a {
    top: 1.02%;
    left: 93.81%; }
  #calendar .day318 a {
    top: 35.03%;
    left: 4.06%; }
  #calendar .day319 a {
    top: 35.03%;
    left: 10.96%; }
  #calendar .day320 a {
    top: 35.03%;
    left: 17.77%; }
  #calendar .day321 a {
    top: 35.03%;
    left: 24.77%; }
  #calendar .day322 a {
    top: 35.03%;
    left: 31.68%; }
  #calendar .day323 a {
    top: 35.03%;
    left: 38.58%; }
  #calendar .day324 a {
    top: 35.03%;
    left: 45.48%; }
  #calendar .day325 a {
    top: 35.03%;
    left: 52.39%; }
  #calendar .day326 a {
    top: 35.03%;
    left: 59.29%; }
  #calendar .day327 a {
    top: 35.03%;
    left: 66.19%; }
  #calendar .day328 a {
    top: 35.03%;
    left: 73.1%; }
  #calendar .day329 a {
    top: 35.03%;
    left: 80%; }
  #calendar .day330 a {
    top: 35.03%;
    left: 86.9%; }
  #calendar .day331 a {
    top: 35.03%;
    left: 93.81%; }
  #calendar .day401 a {
    top: 69.04%;
    left: 4.06%; }
  #calendar .day402 a {
    top: 69.04%;
    left: 10.96%; }
  #calendar .day403 a {
    top: 69.04%;
    left: 17.77%; }
  #calendar .day404 a {
    top: 69.04%;
    left: 24.77%; }
  #calendar .day405 a {
    top: 69.04%;
    left: 31.68%; }
  #calendar .day406 a {
    top: 69.04%;
    left: 38.58%; }
  #calendar .day407 a {
    top: 69.04%;
    left: 45.48%; }
  #calendar .day408 a {
    top: 69.04%;
    left: 52.39%; }
  #calendar .day409 a {
    top: 69.04%;
    left: 59.29%; }
  #calendar .day410 a {
    top: 69.04%;
    left: 66.19%; }
  #calendar .day411 a {
    top: 69.04%;
    left: 73.1%; }
  #calendar .day412 a {
    top: 69.04%;
    left: 80%; }
  #calendar .day413 a {
    top: 69.04%;
    left: 86.9%; }
  #calendar .day414 a {
    top: 69.04%;
    left: 93.81%; } }
/*--------------------------------------------------------------------
// footer
--------------------------------------------------------------------*/
footer .menulist {
  width: 80%;
  margin: 0 auto 10%; }
  @media screen and (min-width: 768px) {
    footer .menulist {
      width: auto;
      text-align: center;
      margin: 0 auto 50px; } }
  footer .menulist ul {
    font-size: 1.8rem;
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif; }
    @media screen and (min-width: 768px) {
      footer .menulist ul {
        display: inline-block;
        position: relative;
        padding-left: 31px; }
        footer .menulist ul::before, footer .menulist ul::after {
          content: "";
          width: 30px;
          height: 30px;
          background: url("../sakura/img/ico_sakura.svg") no-repeat;
          width: 1.7em;
          height: 1.7em;
          background-size: contain;
          position: absolute;
          top: 50%;
          left: 0;
          transform: translateY(-50%);
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%); } }
    @media screen and (min-width: 768px) and (min-width: 768px) {
      footer .menulist ul::before, footer .menulist ul::after {
        width: 35px;
        height: 35px; } }
    @media screen and (min-width: 768px) {
        footer .menulist ul::after {
          top: 50%;
          left: 100%; } }
  footer .menulist li {
    border-bottom: 2px solid #C82C6C; }
    footer .menulist li a {
      display: block;
      color: #5C3737;
      font-weight: bold;
      padding: 1em 1em 1em 2.5em;
      position: relative; }
      footer .menulist li a:hover, footer .menulist li a:active {
        opacity: .7;
        text-decoration: none; }
      @media screen and (max-width: 767px) {
        footer .menulist li a::before {
          content: "";
          width: 1.5em;
          height: 1.5em;
          background: url("../sakura/img/ico_sakura.svg") no-repeat;
          width: 1.7em;
          height: 1.7em;
          background-size: contain;
          position: absolute;
          top: 50%;
          left: .5em;
          transform: translateY(-50%);
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%); } }
  @media screen and (max-width: 767px) and (min-width: 768px) {
    footer .menulist li a::before {
      width: 35px;
      height: 35px; } }

    @media screen and (min-width: 768px) {
      footer .menulist li {
        border-bottom: none;
        display: inline-block;
        border-right: 1px solid #333;
        padding-left: 10px;
        padding-right: 11px;
        line-height: 1.2; }
        footer .menulist li:last-child {
          border: none; }
        footer .menulist li a {
          padding: 0; } }
footer .gr1 {
  background-color: #FDEBF0;
  padding: 3% 0 0; }
  @media screen and (min-width: 768px) {
    footer .gr1 {
      padding: 20px 0; }
      footer .gr1 .wrap {
        width: 100%;
        max-width: 1024px;
        padding: 0 5%;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: center; }
      footer .gr1 .sublink .link a {
        color: #5C3737; } }
footer .info {
  border: 1px solid #000;
  width: 90%;
  margin: 3em auto 4em;
  padding: 30px 20px 20px;
  border: 1px solid #A0522D;
  border-radius: 5px;
  background-color: #fff; }
  @media screen and (min-width: 768px) {
    footer .info {
      width: 60%; } }
  footer .info .inside {
    background: url(../sakura/img/info_sakura.jpg) no-repeat 0px 70%;
    background-size: 100px; }
    footer .info .inside h2 {
      font-size: 2rem;
      color: #5C3737;
      text-align: center;
      margin-bottom: 20px; }
    footer .info .inside p {
      font-size: 1.6rem;
      line-height: 1.6;
      padding-left: 115px; }
  footer .info .notice {
    width: 100%;
    margin: 5% auto 2%;
    position: relative; }
    footer .info .notice::before {
      position: absolute;
      top: 0;
      left: 0;
      content: "";
      width: 100%;
      height: 100%;
      background: url("../sakura/img/ico_sakura.svg") no-repeat right -100px top;
      background-size: auto 140%;
      border-radius: 9px;
      opacity: .2; }
      @media screen and (min-width: 768px) {
        footer .info .notice::before {
          background-position: right -40px top; } }
footer .contact {
  width: 90%;
  margin: 3em auto;
  padding-left: 6%;
  color: #5C3737; }
  @media screen and (min-width: 768px) {
    footer .contact {
      text-align: center;
      width: 40%; }
      footer .contact .inside {
        display: inline-block;
        text-align: left; } }
  footer .contact h2 {
    font-size: 2rem;
    margin-bottom: 1.2em; }
    footer .contact h2::before {
      display: inline-block;
      vertical-align: middle;
      content: "\f879";
      font-family: "Font Awesome 5 Free";
      color: #AA8585;
      font-size: 1.4em;
      font-weight: 900;
      padding-right: .2em; }
  footer .contact dl {
    font-size: 1.6rem; }
    footer .contact dl dt {
      padding-bottom: .5em;
      padding-left: 1.5em;
      position: relative; }
      footer .contact dl dt::before {
        /*display: inline-block;
        vertical-align: bottom;*/
        content: "";
        background-color: #AA8585;
        width: .9em;
        height: .9em;
        border-radius: 50%;
        margin-right: .2em;
        position: absolute;
        top: .2em;
        left: .4em; }
    footer .contact dl dd {
      margin: 0 0 1.6em 1.5em; }
footer .gr2 {
  background-color: #EBEBEB;
  text-align: center;
  padding: 10% 1em;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif; }
  footer .gr2 .linkfree {
    margin-bottom: 3em; }
    footer .gr2 .linkfree .txt {
      display: inline-block;
      font-size: 1.5rem;
      text-align: left; }
      footer .gr2 .linkfree .txt a {
        font-weight: bold;
        color: #E64386;
        text-decoration: none; }
        footer .gr2 .linkfree .txt a:hover, footer .gr2 .linkfree .txt a:active {
          text-decoration: none;
          opacity: .7; }
  footer .gr2 address .txtlink {
    margin: 1.2em 0;
    font-size: 0; }
    footer .gr2 address .txtlink li {
      display: inline-block;
      font-size: 1.5rem;
      border-left: 1px solid #333;
      padding-left: 11px;
      padding-right: 10px;
      line-height: 1;
      margin: .4em 0; }
      footer .gr2 address .txtlink li:first-child {
        border: none; }
  footer .gr2 address .nishi, footer .gr2 address .by {
    display: inline-block;
    margin: 3px;
    vertical-align: middle; }
  footer .gr2 address .by img {
    width: 17rem; }
  @media screen and (min-width: 768px) {
    footer .gr2 {
      text-align: left;
      padding: 5% 1em 30px; }
      footer .gr2 .wrap {
        width: 100%;
        max-width: 1024px;
        padding: 0 12px 0 100px;
        margin: 0 auto;
        position: relative; }
        footer .gr2 .wrap .linkfree {
          margin-bottom: 0;
          padding-left: 10px; }
        footer .gr2 .wrap address {
          display: flex;
          justify-content: space-between;
          align-items: center; }
          footer .gr2 .wrap address .nishi {
            position: absolute;
            top: 10px;
            left: 0; } }
  body#sakura_unique footer .gr2 .outside, body#sakura_sakuramap footer .gr2 .outside {
    display: none; }
  body#sakura_unique footer .gr2 .last, body#sakura_sakuramap footer .gr2 .last {
    border: none; }
