input.reset, button.reset, textarea.reset, select.reset {
  color: inherit;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box; }

.list {
  list-style: none;
  margin: 0;
  padding: 0; }

body.lock,
body.loading {
  overflow: hidden;
  width: 100vw;
  height: 100vh; }

.wrapper a {
  color: inherit;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  text-decoration: none; }
.wrapper p, .wrapper dt, .wrapper dd, .wrapper li {
  word-break: break-word;
  word-wrap: normal; }
.wrapper img {
  max-width: 100%;
  vertical-align: top; }
.wrapper button {
  font-family: inherit; }

.ib {
  display: inline-block;
  line-height: inherit;
  font-weight: inherit; }

.accordion-trigger {
  cursor: pointer;
  display: block; }

.accordion-content {
  display: none; }

.tabHead {
  text-align: center;
  padding: 0 0 20px 0; }
  .tabHead.w200 {
    overflow: auto; }
    .tabHead.w200 .tabHeadInner {
      width: 200%; }
      .tabHead.w200 .tabHeadInner .tabTrigger {
        flex-basis: 25%; }
  .tabHead .tabHeadInner {
    display: flex;
    justify-content: space-between; }
    .tabHead .tabHeadInner .tabTrigger {
      cursor: pointer;
      flex-basis: calc(50% - 3px);
      position: relative;
      font-size: 1.4rem;
      line-height: 1;
      font-weight: 700;
      text-align: center;
      background-color: #ffffff;
      margin: 0 0 0 6px;
      padding: 12px 0 14px 0; }
      .tabHead .tabHeadInner .tabTrigger:first-child {
        margin-left: 0; }
      .tabHead .tabHeadInner .tabTrigger.current {
        color: #ffffff;
        background-color: #000000; }
        .tabHead .tabHeadInner .tabTrigger.current:after {
          content: "";
          display: block;
          position: absolute;
          top: calc(100% - 1px);
          left: 0;
          right: 0;
          width: 1.5rem;
          height: 1rem;
          background-color: #000000;
          margin: auto;
          clip-path: polygon(0 0, 100% 0, 50% 80%); }

.tabBlock {
  display: none; }
  .tabBlock.current {
    display: block; }

.slide .item {
  opacity: 0;
  position: absolute;
  top: 0; }
  .slide .item:first-child {
    opacity: 1;
    position: relative; }
.slide.slick-initialized .item {
  opacity: 1;
  position: relative; }
.slide .slick-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: calc(100% + 18px);
  left: 0;
  right: 0; }
  .slide .slick-dots li {
    overflow: hidden;
    flex-basis: 4px;
    margin: 0 12px; }
    .slide .slick-dots li button {
      margin: 0;
      padding: 0;
      background: none;
      border: none;
      border-radius: 0;
      outline: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      box-sizing: border-box;
      display: block;
      cursor: pointer;
      width: 100%;
      height: 4px;
      text-indent: -9999em;
      background-color: #C8C8C9;
      border-radius: 50%;
      transition: background-color 0.2s ease-out; }
    .slide .slick-dots li button:hover, .slide .slick-dots li.slick-active button {
      background-color: #717071; }
.slide .slick-arrow {
  cursor: pointer;
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 10;
  width: 30px;
  height: 30px;
  text-indent: -9999em;
  margin: auto;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
  background: url(../images/icon_arrow.svg) center center no-repeat;
  background-size: contain; }
  .slide .slick-arrow.slick-prev {
    left: -7px;
    transform: rotate(180deg); }
  .slide .slick-arrow.slick-next {
    right: -7px; }

.moverLine .line {
  position: relative;
  background-image: linear-gradient(90deg, #717071, #717071);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 100% 1px;
  transition: background-size 0.2s ease-out; }

@media screen and (min-width: 769px) {
  /* mover */
  .mover {
    transition: opacity 0.2s ease-out;
    backface-visibility: hidden;
    zoom: 1; }
    .mover:hover {
      opacity: 0.8; }

  .mover-content > * {
    transition: opacity 0.2s ease-out;
    backface-visibility: hidden;
    zoom: 1; }
  .mover-content:hover > * {
    opacity: 0.8; } }
@keyframes bgloop {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 195px 0; } }
@keyframes move {
  0% {
    transform: translateY(0); }
  50% {
    transform: translateY(-30px); }
  100% {
    transform: translateY(0); } }
.wrapper {
  transition: opacity 0.3s; }
  .load_complete .wrapper {
    opacity: 1; }

.contentwrap {
  margin: -104px 0 0 0;
  padding: 104px 0 0 0; }

.scrollposition {
  margin-top: -104px !important;
  padding-top: 104px !important; }

.fadeContent {
  opacity: 0;
  transition: opacity 1.0s ease-out; }

.fadeContent.current {
  opacity: 1; }

@media screen and (min-width: 769px) {
  .contentwrap {
    margin: -87px 0 0 0;
    padding: 87px 0 0 0; }

  .scrollposition {
    margin-top: -87px !important;
    padding-top: 87px !important; } }
.modal-contentwrap {
  opacity: 0;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100000;
  transform: translateX(100vw);
  transition: opacity 0.2s ease-out; }
  .modal-contentwrap .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.5); }
  .modal-contentwrap .modal-content {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 100%; }
  .modal-contentwrap.close .bg {
    display: none; }
  .modal-contentwrap.open {
    opacity: 1;
    transform: translateX(0); }

#header {
  position: relative;
  top: 0;
  left: 0;
  right: 0; }

#pagenav {
  position: relative;
  z-index: 10000;
  height: 54px; }
  #pagenav .pagenav-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 80;
    height: 54px;
    background: url(../images/bg_pagenav.png) center center no-repeat;
    background-size: cover;
    background-color: #ffffff;
    padding: 5px 0 0 0;
    box-sizing: border-box; }
    #pagenav .pagenav-inner .logo-togo {
      width: calc(515 / 768 * 100%); }
  #pagenav.fixed.hide .pagenav-inner {
    position: relative; }
  #pagenav.fixed .pagenav-inner {
    position: fixed; }
  #pagenav.fixed #globalnav .menu {
    height: 100vh; }

#globalnav .button {
  cursor: pointer;
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  z-index: 1000;
  width: calc(66 / 768 * 100vw);
  box-sizing: border-box; }
  #globalnav .button .wrap {
    display: block;
    width: 100%; }
    #globalnav .button .wrap .button-menu {
      display: block; }
    #globalnav .button .wrap .button-close {
      display: none; }
#globalnav .menu {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 999;
  height: calc(100vh - 50px); }
  #globalnav .menu .menu-bg {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.5); }
  #globalnav .menu .menu-inner {
    overflow: hidden;
    position: absolute;
    top: -50px;
    bottom: 0;
    right: 0;
    background-color: #ffffff;
    padding: 104px 0 0 0;
    transform: translateX(100%);
    transition: all 0.2s ease-out;
    -webkit-overflow-scrolling: touch; }
  #globalnav .menu .list {
    padding: 10px 20px; }
    #globalnav .menu .list .item {
      font-size: 1.6rem;
      line-height: 1.56;
      font-weight: 500;
      border-bottom: 1px solid #717071; }
      #globalnav .menu .list .item:last-child {
        border-bottom: 0; }
      #globalnav .menu .list .item a {
        display: flex;
        align-items: center;
        width: 100%;
        padding: 11px 20px 11px 0;
        white-space: nowrap; }
        #globalnav .menu .list .item a:before {
          content: "";
          display: block;
          flex-shrink: 0;
          width: 0.7em;
          height: 1em;
          background-color: #6BB6C3;
          margin: 0 0.2em 0 0;
          clip-path: polygon(0 0, 100% 50%, 0 100%); }
#globalnav.open .button .wrap .button-menu {
  display: none; }
#globalnav.open .button .wrap .button-close {
  display: block; }
#globalnav.open .menu {
  left: 0; }
  #globalnav.open .menu .menu-bg {
    left: 0; }
  #globalnav.open .menu .menu-inner {
    transform: translateX(0); }

@media screen and (min-width: 769px) {
  #header {
    position: absolute; }

  #pagenav {
    top: 87px;
    height: 60px; }
    #pagenav .pagenav-inner {
      height: 60px; }
    #pagenav.fixed .pagenav-inner {
      width: 460px;
      margin: auto; }

  #globalnav .button {
    width: calc(66 / 768 * 100%); }
  #globalnav .menu .menu-content {
    overflow: hidden;
    width: 460px;
    height: 100vh;
    margin: auto;
    filter: blur(0); }
  #globalnav .menu .menu-inner {
    top: 0;
    padding: 60px 0 0 0; } }
@media screen and (min-width: 1100px) {
  #pagenav {
    display: none; } }
#footer {
  z-index: 98; }

/* loading */
#loading {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000000;
  background-color: #FFF776; }

.ball-pulse-sync > div {
  display: inline-block;
  width: 15px;
  height: 15px;
  background-color: #ffffff;
  margin: 10px;
  border-radius: 100%;
  animation-fill-mode: both; }

.ball-pulse-sync > div:nth-child(1) {
  animation: ball-pulse-sync 0.6s -0.14s infinite ease-in-out; }

.ball-pulse-sync > div:nth-child(2) {
  animation: ball-pulse-sync 0.6s -70ms infinite ease-in-out; }

.ball-pulse-sync > div:nth-child(3) {
  animation: ball-pulse-sync 0.6s 0s infinite ease-in-out; }

@keyframes ball-pulse-sync {
  33% {
    transform: translateY(10px); }
  66% {
    transform: translateY(-10px); }
  100% {
    transform: translateY(0); } }
/* animate */
.animate {
  opacity: 0;
  transform: scale(0.6);
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
  .animate.current {
    opacity: 1;
    transform: scale(1); }

/* tooltip */
.tooltip {
  opacity: 0;
  position: absolute;
  z-index: 9999;
  color: #717071;
  font-size: 12px;
  line-height: 1.4;
  text-align: center;
  background-color: #ffffff;
  padding: 10px;
  border-radius: 3px;
  filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.5));
  animation: 0.2s linear fade-in forwards; }

.tooltip[aria-hidden="true"] {
  animation: 0.2s linear fade-out forwards; }

@keyframes fade-in {
  0% {
    opacity: 0;
    visibility: visible; }
  100% {
    opacity: 1; } }
@keyframes fade-out {
  0% {
    opacity: 1; }
  100% {
    opacity: 0;
    visibility: hidden; } }
.tooltip .tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  margin: 10px;
  border-color: #ffffff;
  border-style: solid; }

.tooltip[x-placement^="top"] {
  margin-bottom: 10px; }

.tooltip[x-placement^="top"] .tooltip-arrow {
  border-width: 10px 10px 0 10px;
  border-left-color: transparent;
  border-right-color: transparent;
  border-bottom-color: transparent;
  bottom: -10px;
  left: calc(50% - 10px);
  margin-top: 0;
  margin-bottom: 0; }

.popper[x-placement^="bottom"],
.tooltip[x-placement^="bottom"] {
  margin-top: 10px; }

.tooltip[x-placement^="bottom"] .tooltip-arrow,
.popper[x-placement^="bottom"] .popper__arrow {
  border-width: 0 10px 10px 10px;
  border-left-color: transparent;
  border-right-color: transparent;
  border-top-color: transparent;
  top: -10px;
  left: calc(50% - 10px);
  margin-top: 0;
  margin-bottom: 0; }

.tooltip[x-placement^="right"],
.popper[x-placement^="right"] {
  margin-left: 10px; }

.popper[x-placement^="right"] .popper__arrow,
.tooltip[x-placement^="right"] .tooltip-arrow {
  border-width: 10px 10px 10px 0;
  border-left-color: transparent;
  border-top-color: transparent;
  border-bottom-color: transparent;
  left: -10px;
  top: calc(50% - 10px);
  margin-left: 0;
  margin-right: 0; }

.popper[x-placement^="left"],
.tooltip[x-placement^="left"] {
  margin-right: 10px; }

.popper[x-placement^="left"] .popper__arrow,
.tooltip[x-placement^="left"] .tooltip-arrow {
  border-width: 10px 0 10px 10px;
  border-top-color: transparent;
  border-right-color: transparent;
  border-bottom-color: transparent;
  right: -10px;
  top: calc(50% - 10px);
  margin-left: 0;
  margin-right: 0; }

.tooltip a {
  color: inherit; }

.wrapper {
  color: #717071; }

/* stage */
#stage .logo-pc,
#stage .menu-pc {
  display: none; }

@media screen and (min-width: 769px) {
  #stage {
    display: grid;
    grid-template-areas: "logo maincontents menu";
    grid-template-columns: 1fr 460px 1fr;
    position: relative; }
    #stage .parts .item {
      position: absolute;
      top: 50%;
      left: 0;
      animation: move 8s ease-out infinite;
      filter: drop-shadow(10px 10px 5px rgba(47, 81, 22, 0.2)); }
      #stage .parts .item.parts01 {
        width: 26px;
        height: 46px;
        background: url(../images/img_parts01.svg) center center no-repeat;
        background-size: contain;
        margin: calc(-78 / 462 * 100%) 0 0 calc(-67 / 462 * 100%); }
      #stage .parts .item.parts02 {
        width: 33px;
        height: 47px;
        background: url(../images/img_parts02.svg) center center no-repeat;
        background-size: contain;
        margin: calc(174 / 462 * 100%) 0 0 calc(117 / 462 * 100%);
        animation-delay: 1.5s; }
      #stage .parts .item.parts03 {
        width: 39px;
        height: 51px;
        background: url(../images/img_parts03.svg) center center no-repeat;
        background-size: contain;
        margin: calc(106 / 462 * 100%) 0 0 calc(493 / 462 * 100%);
        animation-delay: 3s; }
      #stage .parts .item.parts04 {
        width: 21px;
        height: 48px;
        background: url(../images/img_parts04.svg) center center no-repeat;
        background-size: contain;
        margin: calc(87 / 462 * 100%) 0 0 calc(-144 / 462 * 100%); }
      #stage .parts .item.parts05 {
        width: 22px;
        height: 43px;
        background: url(../images/img_parts05.svg) center center no-repeat;
        background-size: contain;
        margin: calc(-199 / 462 * 100%) 0 0 calc(571 / 462 * 100%);
        animation-delay: 1.5s; }
      #stage .parts .item.parts06 {
        width: 58px;
        height: 39px;
        background: url(../images/img_parts06.svg) center center no-repeat;
        background-size: contain;
        margin: calc(250 / 462 * 100%) 0 0 calc(511 / 462 * 100%);
        animation-delay: 3s; }
    #stage .logo-pc {
      display: block;
      grid-area: logo;
      position: sticky;
      top: 0;
      z-index: 2;
      height: 100vh; }
      #stage .logo-pc .image {
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 10;
        width: calc(462 / 739 * 100%);
        margin: auto; }
        #stage .logo-pc .image img {
          display: none; }
      #stage .logo-pc .bottom-bg {
        position: absolute;
        bottom: 0;
        left: 0;
        width: calc(642 / 739 * 100%);
        background: url(../images/bg_pc_left.png) center bottom no-repeat;
        background-size: contain;
        padding: calc(348 / 739 * 100%) 0 0 0; }
    #stage .menu-pc {
      display: block;
      grid-area: menu;
      position: sticky;
      top: 0;
      height: 100vh; }
      #stage .menu-pc .stage-bg {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        z-index: -1;
        height: 100vh; }
        #stage .menu-pc .stage-bg .top {
          content: "";
          display: block;
          position: absolute;
          top: 0;
          right: 0;
          width: 100vw;
          height: 50vh;
          background: url(../images/bg_pc_pattern.png) left top repeat;
          background-size: 195px; }
        #stage .menu-pc .stage-bg .bottom {
          content: "";
          display: block;
          position: absolute;
          bottom: 0;
          right: 0;
          width: 100vw;
          height: 50vh;
          background: url(../images/bg_pc_pattern.png) right bottom repeat;
          background-size: 195px; }
        #stage .menu-pc .stage-bg .middle {
          display: block;
          position: absolute;
          top: 0;
          bottom: 0;
          right: 0;
          z-index: 1;
          width: 100vw;
          height: calc(100vh - (194px * 2));
          min-height: 342px;
          background: url(../images/bg_stripe01.png) left top repeat;
          background-size: 102px;
          background-color: #ffffff;
          margin: auto; }
          #stage .menu-pc .stage-bg .middle:before {
            content: ""; }
          #stage .menu-pc .stage-bg .middle:after {
            content: "";
            display: block;
            position: absolute;
            bottom: 0;
            right: 0;
            width: 100vw;
            height: 342px;
            background: url(../images/bg_pc_line.png) center bottom no-repeat;
            background-size: contain;
            margin: auto; }
          #stage .menu-pc .stage-bg .middle .plant {
            position: absolute;
            bottom: 100%;
            right: 0;
            width: calc(310 / 1938 * 100%);
            background: url(../images/bg_plant.png) center bottom no-repeat;
            background-size: contain;
            padding: calc(78 / 1938 * 100%) 0 0 0; }
      #stage .menu-pc .menu-inner {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 10;
        width: calc(341 / 739 * 100%);
        min-width: 1px;
        margin: auto; }
        #stage .menu-pc .menu-inner .box {
          width: 100%;
          text-align: center; }
          #stage .menu-pc .menu-inner .box .frame {
            display: none;
            filter: drop-shadow(10px 10px 5px rgba(47, 81, 22, 0.2)); }
            #stage .menu-pc .menu-inner .box .frame:before {
              content: "";
              display: block;
              width: 100%;
              height: 0;
              background: url(../images/frame_menu_top.png) center bottom no-repeat;
              background-size: cover;
              padding: calc(42 / 341 * 100%) 0 0 0; }
            #stage .menu-pc .menu-inner .box .frame:after {
              content: "";
              display: block;
              width: 100%;
              height: 0;
              background: url(../images/frame_menu_bottom.png) center top no-repeat;
              background-size: cover;
              margin: -1px 0 0 0;
              padding: calc(29 / 341 * 100%) 0 0 0; }
            #stage .menu-pc .menu-inner .box .frame .frame-inner {
              background: url(../images/frame_menu_middle.png) center top repeat-y;
              background-size: contain;
              padding: 0 10px; }
          #stage .menu-pc .menu-inner .box .list {
            display: inline-block; }
            #stage .menu-pc .menu-inner .box .list .item {
              font-size: 2.2rem;
              line-height: 1.5;
              font-weight: 500;
              border-bottom: 1px solid #717071; }
              #stage .menu-pc .menu-inner .box .list .item:last-child {
                border-bottom: 0; }
              #stage .menu-pc .menu-inner .box .list .item a {
                display: flex;
                align-items: center;
                width: 100%;
                padding: 11px 0;
                white-space: nowrap; }
                #stage .menu-pc .menu-inner .box .list .item a:before {
                  content: "";
                  display: block;
                  flex-shrink: 0;
                  width: 0.7em;
                  height: 1em;
                  background-color: #6BB6C3;
                  margin: 0 0.2em 0 0;
                  clip-path: polygon(0 0, 100% 50%, 0 100%); }
      #stage .menu-pc .bottom-bg {
        position: absolute;
        bottom: 0;
        right: 0;
        width: calc(475 / 739 * 100%);
        background: url(../images/bg_pc_right.png) center bottom no-repeat;
        background-size: contain;
        padding: calc(220 / 739 * 100%) 0 0 0; } }
@media screen and (min-width: 1100px) {
  #stage .logo-pc .image img {
    display: block; }
  #stage .menu-pc .menu-inner {
    min-width: 300px; }
    #stage .menu-pc .menu-inner .box .frame {
      display: block; } }
/* maincontents */
#maincontents {
  background-color: #ffffff; }

@media screen and (min-width: 769px) {
  #maincontents {
    grid-area: maincontents;
    position: relative;
    max-width: 460px;
    margin: auto; }
    #maincontents:before, #maincontents:after {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      right: 100%;
      width: 15px;
      filter: drop-shadow(0 0 15px rgba(69, 112, 40, 0.35));
      background: linear-gradient(to left, rgba(69, 112, 40, 0.15), rgba(69, 112, 40, 0)); }
    #maincontents:after {
      left: 100%;
      right: auto;
      background: linear-gradient(to right, rgba(69, 112, 40, 0.15), rgba(69, 112, 40, 0)); } }
/* firstcontent */
#firstcontent .update {
  background: url(../images/bg_stripe01.png) left top repeat;
  background-size: 102px;
  margin: 0 0 10px 0; }
  #firstcontent .update .date {
    font-size: 1.3rem;
    line-height: 1;
    font-weight: 500;
    text-align: center;
    padding: calc(23 / 750 * 100%) 0; }
#firstcontent .slidewrap {
  overflow: hidden;
  margin: 0 0 16px 0;
  padding: 0 0 31px 0; }
  #firstcontent .slidewrap .slide {
    width: calc(700 / 750 * 100%);
    margin: auto; }
    #firstcontent .slidewrap .slide .slick-list {
      overflow: visible; }
    #firstcontent .slidewrap .slide .item {
      padding: 0 6px; }
#firstcontent .link {
  text-align: center;
  margin: 0 0 37px 0; }
  #firstcontent .link a {
    display: inline-block;
    font-size: 1.4rem;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.15em;
    border-bottom: 1px solid #717071; }
    #firstcontent .link a .icon {
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 5px 0; }
      #firstcontent .link a .icon:before {
        content: "";
        display: block;
        flex-shrink: 0;
        width: 0.7em;
        height: 1em;
        background-color: #CB5394;
        margin: 0 0.8em 0 0;
        clip-path: polygon(0 0, 100% 50%, 0 100%); }

@media screen and (min-width: 769px) {
  #firstcontent .content {
    padding: 87px 0 0 0; } }
/* about */
#about .box {
  position: relative;
  width: calc(672 / 750 * 100%);
  background-color: #ffffff;
  border-radius: 15px; }
  #about .box:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: url(../images/img_modal_head.png) center top no-repeat;
    background-size: contain;
    padding: calc(314 / 672 * 100%) 0 0 0; }
  #about .box:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    width: calc(230 / 672 * 100%);
    background: url(../images/img_modal_foot.png) center bottom no-repeat;
    background-size: contain;
    padding: calc(94 / 672 * 100%) 0 0 0; }
  #about .box .text {
    font-size: 1.6rem;
    line-height: 1.44;
    font-weight: 500;
    text-align: center;
    padding: calc(335 / 672 * 100%) 0 calc(75 / 672 * 100%) 0; }
  #about .box .close-button {
    position: absolute;
    top: 0;
    right: 0;
    width: calc(60 / 672 * 100%);
    margin: calc(-30 / 672 * 100%) 0 0 0; }

@media screen and (min-width: 769px) {
  #about .box {
    max-width: calc(672 / 750 * 460px); } }
/* attentionword */
#attentionword .content {
  position: relative;
  background: url(../images/bg_stripe01.png) left top repeat;
  background-size: 102px;
  background-color: #ffffff;
  margin: 0 0 calc(100 / 750 * 100%) 0;
  padding: 0 0 calc(120 / 750 * 100%) 0; }
  #attentionword .content:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: url(../images/bg_word01.png) center center no-repeat;
    background-size: contain;
    margin: calc(-17 / 750 * 100%) 0 0 0;
    padding: calc(213 / 750 * 100%) 0 0 0; }
  #attentionword .content:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(../images/bg_word02.png) center bottom no-repeat;
    background-size: contain;
    padding: calc(189 / 750 * 100%) 0 0 0; }
#attentionword .content-inner {
  position: relative;
  z-index: 2; }
#attentionword .title {
  padding: calc(106 / 750 * 100%) 0 calc(45 / 750 * 100%) 0; }
#attentionword .word {
  padding: 0 20px; }
  #attentionword .word .list .item {
    display: inline-block;
    margin: 0 8px 8px 0; }
    #attentionword .word .list .item a {
      display: block;
      font-size: 1.4rem;
      line-height: 1;
      font-weight: 500;
      background-color: #ffffff;
      padding: 9px 10px 11px 10px;
      border: 1px solid #717071;
      border-radius: 7px; }

/* calendar */
#calendar .content {
  position: relative;
  background-color: #ffffff;
  margin: 0 0 calc(145 / 750 * 100%) 0;
  padding: 0 0 calc(42 / 750 * 100%) 0; }
  #calendar .content:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: url(../images/bg_callendar.png) center center no-repeat;
    background-size: contain;
    margin: calc(-32 / 750 * 100%) 0 0 0;
    padding: calc(184 / 750 * 100%) 0 0 0; }
#calendar .content-inner {
  position: relative;
  z-index: 2; }
#calendar .title {
  padding: calc(69 / 750 * 100%) 0 calc(15 / 750 * 100%) 0; }
#calendar .desc {
  font-size: 1.2rem;
  line-height: 1.42;
  text-align: center;
  padding: calc(15 / 750 * 100%) 0 calc(40 / 750 * 100%) 0; }
#calendar .wrap {
  width: calc(718 / 750 * 100%);
  margin: auto; }
  #calendar .wrap .fc-dayGridMonth-view td,
  #calendar .wrap .fc-dayGridMonth-view th {
    border: 1px solid #9E9E9F; }
  #calendar .wrap .fc-dayGridMonth-view th {
    border-bottom: 0; }
  #calendar .wrap .fc-dayGridMonth-view .fc-scrollgrid {
    border: 0; }
  #calendar .wrap .fc .fc-toolbar-title {
    color: #251E1C;
    font-size: 1.7rem;
    line-height: 1.41; }
  #calendar .wrap .fc .fc-button-primary {
    color: #ffffff;
    background-color: #666766;
    padding: 0.4em 0.5em;
    border-color: #666766; }
    #calendar .wrap .fc .fc-button-primary:not(:disabled).fc-button-active, #calendar .wrap .fc .fc-button-primary:not(:disabled):active {
      background-color: #363636;
      border-color: #363636; }
    #calendar .wrap .fc .fc-button-primary:focus {
      box-shadow: none; }
    #calendar .wrap .fc .fc-button-primary.fc-prev-button, #calendar .wrap .fc .fc-button-primary.fc-next-button {
      padding: 0.4em 0.4em; }
  #calendar .wrap .fc .fc-col-header-cell {
    color: #251E1C;
    background-color: #E1E2E2; }
    #calendar .wrap .fc .fc-col-header-cell .fc-col-header-cell-cushion {
      font-size: 1.1rem;
      line-height: 1;
      font-weight: 700; }
  #calendar .wrap .fc .fc-daygrid-day-number {
    color: #251E1C;
    font-size: 1.2rem;
    line-height: 1; }
  #calendar .wrap .fc .fc-daygrid-day.fc-day-today {
    background-color: #FFFCDB; }
  #calendar .wrap .fc .fc-list-event-time {
    display: none; }
  #calendar .wrap .fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events {
    min-height: 1em; }
  #calendar .wrap .fc .fc-daygrid-event {
    margin-top: 1px;
    margin-bottom: 1px; }
    #calendar .wrap .fc .fc-daygrid-event.fc-event-start {
      padding: 0 0 0 5px; }
  #calendar .wrap .fc .fc-h-event {
    line-height: 1.3; }
  #calendar .wrap .fc .fc-footer-toolbar {
    display: none; }
  #calendar .wrap .fc .fc-list-sticky .fc-list-day > * {
    z-index: 1; }
  #calendar .wrap .fc .fc-dayGridMonth-view .fc-scrollgrid-section-header {
    background-color: #E1E2E2; }
    #calendar .wrap .fc .fc-dayGridMonth-view .fc-scrollgrid-section-header .fc-scroller {
      -ms-overflow-style: none;
      scrollbar-color: transparent transparent; }
      #calendar .wrap .fc .fc-dayGridMonth-view .fc-scrollgrid-section-header .fc-scroller::-webkit-scrollbar {
        visibility: hidden; }
  #calendar .wrap .fc .fc-dayGridMonth-view .fc-scroller {
    overflow: hidden scroll !important; }
    #calendar .wrap .fc .fc-dayGridMonth-view .fc-scroller > * {
      max-width: 100%; }
      #calendar .wrap .fc .fc-dayGridMonth-view .fc-scroller > * table {
        max-width: 100%; }
#calendar .label-area {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: calc(718 / 750 * 100%);
  margin: auto;
  padding: 10px 0; }
  #calendar .label-area label {
    display: flex;
    align-items: center;
    font-size: 1.2rem;
    line-height: 1.5;
    font-weight: 500; }
    #calendar .label-area label input {
      position: relative;
      width: 1.4em;
      height: 1.4em;
      margin: 0 2px 0 0;
      border: 1px solid #717071;
      border-radius: 0;
      box-sizing: border-box; }
      #calendar .label-area label input:checked {
        background-color: #B04370;
        border: 0; }
        #calendar .label-area label input:checked:after {
          content: "";
          position: absolute;
          top: 0;
          bottom: 0.2em;
          left: 0;
          right: 0;
          width: 0.4em;
          height: 0.8em;
          margin: auto;
          border-bottom: 2px solid #ffffff;
          border-right: 2px solid #ffffff;
          transform: rotate(45deg); }
      #calendar .label-area label input[data-calendar="calendar_campaign"]:checked {
        background-color: #6FB3DD; }
      #calendar .label-area label input[data-calendar="calendar_item"]:checked {
        background-color: #9BBA4A; }
      #calendar .label-area label input[data-calendar="calendar_sale"]:checked {
        background-color: #E0C030; }

/* announcement */
#announcement .content {
  margin: 0 0 calc(150 / 750 * 100%) 0; }
#announcement .content-inner {
  overflow: hidden;
  position: relative;
  z-index: 2;
  width: calc(715 / 750 * 100%);
  margin: auto; }
#announcement .title {
  color: #ffffff;
  font-size: 2rem;
  line-height: 1;
  font-weight: 700;
  text-align: center;
  background-color: #00b050;
  padding: 8px 0 7px 0;
  border-radius: 10px 10px 0 0; }
#announcement .box {
  border: 4px solid #00b050;
  box-sizing: border-box; }
#announcement .first {
  }
  #announcement .first .image {
    }
  #announcement .first .text {
    color: #000000;
    font-size: 1.6rem;
    line-height: 1.6;
    font-weight: 500;
    text-align: center;
    padding: 28px 0; }
  #announcement .first .mark {
    width: 70%;
    margin: 0 auto 24px auto; }
  #announcement .first .button {
    padding: 0 0 37px 0; }
  #announcement .box.open .first .button {
    display: none; }
    #announcement .first .button .more-button {
      cursor: pointer;
      display: block;
      width: calc(350 / 715 * 100%);
      color: #000000;
      font-size: 1.8rem;
      line-height: 1;
      font-weight: 500;
      text-align: center;
      margin: auto;
      padding: 14px 0 16px 0;
      border: 2px solid #00b050;
      border-radius: 3rem; }
#announcement .pickup {
   }
  #announcement .pickup .pickup-inner {
    background-color: #f07c99;
    padding: 0 calc(25 / 715 * 100%); }
  #announcement .pickup .pickup-title {
    }
  #announcement .pickup .list {
    }
    #announcement .pickup .list .item {
      margin: 0 0 17px 0; }
    #announcement .pickup .list .item:last-child {
      margin: 0; }
  #announcement .pickup .more {
    }
  #announcement .pickup .text {
    color: #00b050;
    font-size: 1.8rem;
    line-height: 1.6;
    font-weight: 500;
    text-align: center;
    margin: auto;
    padding: 34px 0 20px 0; }
  #announcement .pickup .button {
    padding: 24px 0 47px 0; }
    #announcement .pickup .button .close-button {
      cursor: pointer;
      display: block;
      width: calc(350 / 715 * 100%);
      color: #000000;
      font-size: 1.8rem;
      line-height: 1;
      font-weight: 500;
      text-align: center;
      margin: auto;
      padding: 14px 0 16px 0;
      border: 2px solid #00b050;
      border-radius: 3rem; }
@media screen and (min-width: 769px) {
  #announcement .first .text {
    font-size: 1.8rem; }
    #announcement .first .button .more-button {
      font-size: 2.0rem;
      padding: 16px 0 20px 0; }
  #announcement .pickup .text {
    font-size: 1.8rem; }
    #announcement .pickup .button .close-button {
      font-size: 2.0rem;
      padding: 16px 0 20px 0; }
}

/* contents */
#contents .content {
  position: relative;
  background: url(../images/bg_stripe02.png) left top repeat;
  background-size: 14px;
  background-color: #ffffff;
  margin: 0 0 calc(100 / 750 * 100%) 0;
  padding: 0 0 calc(42 / 750 * 100%) 0; }
  #contents .content:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: url(../images/bg_contents01.png) center center no-repeat;
    background-size: contain;
    margin: calc(-57 / 750 * 100%) 0 0 0;
    padding: calc(188 / 750 * 100%) 0 0 0; }
#contents .content-inner {
  position: relative;
  z-index: 2; }
#contents .title {
  padding: calc(69 / 750 * 100%) 0 calc(45 / 750 * 100%) 0; }
#contents .category-list {
  padding: 0 0 14px 0; }
  #contents .category-list .list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }
    #contents .category-list .list .item {
      display: inline-block;
      margin: 0 5px 18px 5px; }
      #contents .category-list .list .item .category-button {
        display: block;
        min-width: 7.1em;
        font-size: 1.5rem;
        line-height: 1;
        font-weight: 500;
        background-color: #ffffff;
        padding: 11px 10px;
        border-radius: 7px;
        filter: drop-shadow(5px 5px 2px rgba(0, 104, 147, 0.3));
        box-sizing: border-box;
        transition: all 0.2s ease-out; }
        #contents .category-list .list .item .category-button.current {
          color: #ffffff;
          background-color: #0054A9; }
#contents .info .list .block {
  display: none;
  width: calc(715 / 750 * 100%);
  margin: 0 auto calc(36 / 750 * 100%) auto; }
  #contents .info .list .block.show {
    display: block; }
  #contents .info .list .block .box {
    position: relative;
    background-color: #ffffff;
    padding: calc(20 / 715 * 100%);
    border-radius: 7px; }
    #contents .info .list .block .box .icon {
      position: absolute;
      top: 0;
      left: 0;
      width: calc(148 / 675 * 100%); }
      #contents .info .list .block .box .icon img {
        opacity: 1 !important; }
    #contents .info .list .block .box .box-info {
      display: flex;
      align-items: center;
      padding: calc(29 / 675 * 100%) 0 calc(19 / 675 * 100%) 0; }
      #contents .info .list .block .box .box-info .category {
        font-size: 1rem;
        line-height: 1;
        font-weight: 500;
        margin: 0 7px 0 0;
        padding: 2px 11px 3px 11px;
        border: 1px solid #717071;
        border-radius: 1.5em; }
      #contents .info .list .block .box .box-info .date {
        font-size: 1.2rem;
        line-height: 1;
        font-weight: 500; }
    #contents .info .list .block .box .headline {
      font-size: 1.6rem;
      line-height: 1.38;
      font-weight: 500; }
#contents .info .nodata {
  display: none;
  width: calc(715 / 750 * 100%);
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 500;
  text-align: center;
  background-color: #ffffff;
  margin: 0 auto calc(36 / 750 * 100%) auto;
  padding: 3em 0; }

/* chirashi */
#chirashi .content {
  position: relative;
  background-color: #ffffff;
  padding: 0 0 calc(120 / 750 * 100%) 0; }
  #chirashi .content:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: url(../images/bg_chirashi01.png) center center no-repeat;
    background-size: contain;
    margin: calc(-90 / 750 * 100%) 0 0 0;
    padding: calc(203 / 750 * 100%) 0 0 0; }
  #chirashi .content:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(../images/bg_chirashi02.png) center bottom no-repeat;
    background-size: contain;
    padding: calc(63 / 750 * 100%) 0 0 0; }
#chirashi .content-inner {
  position: relative;
  z-index: 2; }
#chirashi .title {
  padding: calc(69 / 750 * 100%) 0 calc(23 / 750 * 100%) 0; }
#chirashi .imagewrap .image {
  width: calc(494 / 750 * 100%);
  margin: auto; }
  #chirashi .imagewrap .image img {
    border: 2px solid #CCCCCC; }
  #chirashi .imagewrap .image .date {
    font-size: 1.2rem;
    line-height: 1;
    font-weight: 500;
    text-align: center;
    padding: calc(40 / 494 * 100%) 0 calc(40 / 494 * 100%) 0; }
#chirashi .link {
  text-align: center; }
  #chirashi .link .button {
    display: inline-block;
    font-size: 1.9rem;
    line-height: 1;
    font-weight: 500;
    background-color: #ffffff;
    padding: 7px 35px 8px 35px;
    border: 1px solid #717071;
    border-radius: 1.5em; }
#chirashi .nodata {
  width: calc(715 / 750 * 100%);
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 500;
  text-align: center;
  background-color: #F0F0F0;
  margin: 0 auto calc(36 / 750 * 100%) auto;
  padding: 3em 0; }

/* other */
#other .content {
  position: relative;
  background-color: #F4E1EC;
  padding: 0 0 calc(120 / 750 * 100%) 0; }
  #other .content:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: url(../images/bg_other.png) center center no-repeat;
    background-size: contain;
    margin: calc(-49 / 750 * 100%) 0 0 0;
    padding: calc(155 / 750 * 100%) 0 0 0; }
#other .content-inner {
  position: relative;
  z-index: 2; }
#other .title {
  padding: calc(120 / 750 * 100%) 0 calc(56 / 750 * 100%) 0; }
#other .banner {
  display: flex;
  flex-wrap: wrap;
  width: calc(695 / 750 * 100%);
  margin: auto; }
  #other .banner .item {
    flex-basis: calc(337.5 / 695 * 100%);
    margin: 0 0 calc(20 / 695 * 100%) calc(20 / 695 * 100%); }
    #other .banner .item:nth-child(2n+1) {
      margin-left: 0; }

/* top-link */
#top-link {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999; }
  #top-link .button {
    display: block;
    position: absolute;
    bottom: 10px;
    right: 10px;
    width: calc(93 / 750 * 100%); }
    #top-link .button img {
      opacity: 1; }

@media screen and (min-width: 769px) {
  #top-link {
    width: 460px;
    margin: auto; } }

/* 202608 nniv_content */

#anniv_content {
  background: url(../images/bg_anniv.png) top center no-repeat;
  background-size: 100% auto;
  padding-top: 16.087vw;
  position: relative;
  margin-bottom: 18.479vw;
}
#anniv_content img {
  width: 100%;
}
#anniv_content .inner {
  background-color: #f5f1e4;
}
#anniv_content .pickup .ttl {
  width: 85.218%;
  margin-left: 9.566%;
  position: relative;
  z-index: 100;
}
#anniv_content .pickup .anima01 {
  width: 23.914%;
  position: absolute;
  z-index: 10;
  top: 1.087vw;
  left: 0;
  animation: move 8s ease-out infinite;
}
#anniv_content .pickup .anima02 {
  width: 21.522%;
  position: absolute;
  z-index: 10;
  top: -5.435vw;
  right: 0;
  animation: move 8s ease-out infinite;
  animation-delay: 3s;
}
#anniv_content .pickup .lead {
  width: 85.867%;
  margin: 5.435vw auto 0;
}
#anniv_content .pickup .img {
  margin-top: 6.522vw;
}
#anniv_content .pickup .text {
  background: url(../images/bg_pickup.png) top center no-repeat;
  background-size: 100% auto;
  text-align: center;
  font-size: 3.479vw;
  line-height: 1.75;
  padding: 7.609vw 0 4.348vw;
  position: relative;
}
#anniv_content .pickup .text p {
  position: relative;
  z-index: 100;
  color: #282828;
}
#anniv_content .pickup .text p:not(:first-of-type) {
  margin-top: 8.696vw;
}
#anniv_content .pickup .anima03 {
  width: 14.783%;
  position: absolute;
  z-index: 10;
  top: 6.957vw;
  right: 0;
  animation: move 8s ease-out infinite;
  animation-delay: 3s;
}
#anniv_content .pickup .anima04 {
  width: 16.74%;
  position: absolute;
  z-index: 10;
  bottom: -3.479vw;
  left: 0;
  animation: move 8s ease-out infinite;
}
#anniv_content .event {
  background: url(../images/bg_event.png) top center no-repeat;
  background-size: 100% auto;
  position: relative;
  padding: 8.044vw 0;
}
#anniv_content .event .icon {
  position: absolute;
  bottom: 29.348vw;
  right: 0;
  z-index: 100;
  width: 20%;
  animation: move 8s ease-out infinite;
  animation-delay: 3s;
}
#anniv_content .event .sttl {
  width: 65.218%;
  margin: 0 auto;
}
#anniv_content .event .ttl {
  width: 90.218%;
  margin: 4.348vw auto 0;
}
#anniv_content .event .event-slide {
  margin-top: 7.609vw;
}
#anniv_content .event .slide-anniv .item {
  background: #fff;
  height: 163.479vw;
  width: 100%;
  margin: 0 2.718vw;
}
#anniv_content .event .slide-anniv .slick-arrow.slick-prev {
  cursor: pointer;
  position: absolute;
  left: 6.957vw;
  top: 90.435vw;
  z-index: 10;
  width: 12.174vw;
  height: 12.174vw;
  text-indent: -9999em;
  margin: auto;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
  background: url(../images/icon_prev.png) center center no-repeat;
  background-size: contain; 
  transition: opacity 0.2s ease-out;
}
#anniv_content .event .slide-anniv .slick-arrow.slick-next {
  cursor: pointer;
  position: absolute;
  right: 6.957vw;
  top: 90.435vw;
  z-index: 10;
  width: 12.174vw;
  height: 12.174vw;
  text-indent: -9999em;
  margin: auto;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
  background: url(../images/icon_next.png) center center no-repeat;
  background-size: contain; 
  transition: opacity 0.2s ease-out;
}
#anniv_content .event .slide-anniv .slick-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: calc(100% + 5.218vw);
  left: 0;
  right: 0;
}
#anniv_content .event .slide-anniv .slick-dots li {
  overflow: hidden;
  flex-basis: 2.827vw;
  margin: 0 2.609vw;
}
#anniv_content .event .slide-anniv .slick-dots li button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
  display: block;
  cursor: pointer;
  width: 100%;
  height: 2.827vw;
  text-indent: -9999em;
  background-color: #cccccc;
  border-radius: 50%;
  transition: background-color 0.2s ease-out; 
}
#anniv_content .event .slide-anniv .slick-dots li.slick-active button {
  background-color: #da3e58; 
}
#anniv_content .event .slide-anniv .item .date {
  width: 88.889%;
  margin: 3.914vw auto 0;
}
#anniv_content .event .slide-anniv .item .fig {
  width: 88.889%;
  margin: 5.435vw auto 0;
}
#anniv_content .event .slide-anniv .item .btn a {
  margin: 6.522vw auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 46.087vw;
  height: 13.044vw;
  background-color: #ffe600;
  font-size: 4.348vw;
  font-weight: bold;
  color: #000;
  border-radius: 50vw;
}
#anniv_content .event .slide-anniv .item .btn span {
  margin: 6.522vw auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 46.087vw;
  height: 13.044vw;
  background-color: #cccccc;
  font-size: 4.348vw;
  font-weight: bold;
  color: #000;
  border-radius: 50vw;
}
#anniv_content .event .note {
  width: 90%;
  margin: 17.392vw auto 0;
  color: #020202;
  font-size: 3.914vw;
  line-height: 1.6;
  text-indent: -1em;
  padding-left: 1em;
}
#anniv_content .sale {
  background: url(../images/bg_sale.png) top center no-repeat;
  background-size: 100% auto;
  position: relative;
  padding: 13.044vw 0;
}
#anniv_content .sale .sttl {
  width: 52.392%;
  margin: 0 auto;
}
#anniv_content .sale .ttl {
  width: 90.87%;
  margin: 3.261vw auto 0;
}
#anniv_content .sale .panel {
  width: 86.957%;
  margin: 7.609vw auto 0;
  background: #fff;
  border-radius: 2.174vw;
  padding: 5vw 4.348vw 10.87vw;
  position: relative;
  z-index: 10;
}
#anniv_content .sale .panel .text {
  color: #181919;
  font-size: 3.914vw;
  line-height: 1.61;
  text-align: center;
  margin-top: 5.435vw;
}
#anniv_content .sale .panel .btn a {
  margin: 6.522vw auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 43.479vw;
  height: 13.044vw;
  background-color: #ffe600;
  font-size: 4.348vw;
  font-weight: bold;
  color: #000;
  border-radius: 50vw;
}
#anniv_content .sale .panel .btn span {
  margin: 6.522vw auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 43.479vw;
  height: 13.044vw;
  background-color: #cccccc;
  font-size: 4.348vw;
  font-weight: bold;
  color: #000;
  border-radius: 50vw;
}
#anniv_content .sale .sale-text {
  color: #020202;
  text-align: center;
  font-size: 4.348vw;
  line-height: 1.45;
  margin-top: 9.783vw;
}
#anniv_content .sale .sale-btn a {
  margin: 6.522vw auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 56.957vw;
  height: 13.044vw;
  background-color: #fff;
  border: #cccccc solid 0.435vw;
  font-size: 4.348vw;
  font-weight: bold;
  color: #000;
  border-radius: 50vw;
}
#anniv_content .sale .anima05 {
  width: 15.653%;
  position: absolute;
  z-index: 100;
  top: 111.087vw;
  left: 0;
  animation: move 8s ease-out infinite;
  animation-delay: 3s;
}
#anniv_content .sale .anima06 {
  width: 19.566%;
  position: absolute;
  z-index: 100;
  top: 146.74vw;
  right: 0;
  animation: move 8s ease-out infinite;
  animation-delay: 1.5s;
}
#anniv_content .sale .anima07 {
  width: 15.653%;
  position: absolute;
  z-index: 100;
  bottom: -8.261vw;
  left: 0;
  animation: move 8s ease-out infinite;
}
@media screen and (min-width: 769px) {
  #anniv_content {
    padding-top: 74px;
    margin-bottom: 85px;
  }
  #anniv_content .pickup .anima01 {
    top: 5px;
  }
  #anniv_content .pickup .anima02 {
    top: -25px;
  }
  #anniv_content .pickup .lead {
    margin-top: 25px;
  }
  #anniv_content .pickup .img {
    margin-top: 30px;
  }
  #anniv_content .pickup .text {
    font-size: 16px;
    padding: 35px 0 20px;
  }
  #anniv_content .pickup .text p:not(:first-of-type) {
    margin-top: 40px;
  }
  #anniv_content .pickup .anima03 {
    top: 32px;
  }
  #anniv_content .pickup .anima04 {
    bottom: -16px;
  }
  #anniv_content .event {
    padding: 37px 0;
  }
  #anniv_content .event .icon {
    bottom: 135px;
  }
  #anniv_content .event .ttl {
    margin-top: 20px;
  }
  #anniv_content .event .event-slide {
    margin-top: 35px;
  }
  #anniv_content .event .slide-anniv .item {
    height: 752px;
    margin: 0 12.5px;
  }
  #anniv_content .event .slide-anniv .slick-arrow.slick-prev {
    left: 32px;
    top: 416px;
    width: 56px;
    height: 56px;
    transition: opacity 0.2s ease-out;
  }
  #anniv_content .event .slide-anniv .slick-arrow.slick-next {
    right: 32px;
    top: 416px;
    width: 56px;
    height: 56px;
    transition: opacity 0.2s ease-out;
  }
  #anniv_content .event .slide-anniv .slick-arrow:hover {
    opacity: 0.8;
  }
  #anniv_content .event .slide-anniv .slick-dots {
    top: calc(100% + 24px);
  }
  #anniv_content .event .slide-anniv .slick-dots li {
    flex-basis: 13px;
    margin: 0 12px;
  }
  #anniv_content .event .slide-anniv .slick-dots li button {
    height: 13px;
    transition: background-color 0.2s ease-out; 
  }
  #anniv_content .event .slide-anniv .slick-dots li button:hover {
    background-color: #da3e58; 
  }
  #anniv_content .event .slide-anniv .item .date {
    margin: 18px auto 0;
  }
  #anniv_content .event .slide-anniv .item .fig {
    margin: 25px auto 0;
  }
  #anniv_content .event .slide-anniv .item .btn a {
      margin: 30px auto 0;
      width: 212px;
      height: 60px;
      font-size: 20px;
  }
  #anniv_content .event .slide-anniv .item .btn span {
      margin: 30px auto 0;
      width: 212px;
      height: 60px;
      font-size: 20px;
  }
  #anniv_content .event .note {
    margin-top: 80px;
    font-size: 18px;
  }
  #anniv_content .sale {
    padding: 60px 0;
  }
  #anniv_content .sale .ttl {
    margin-top: 15px;
  }
  #anniv_content .sale .panel {
    margin: 35px auto 0;
    border-radius: 10px;
    padding: 23px 20px 50px;
  }
  #anniv_content .sale .panel .text {
    font-size: 18px;
    margin-top: 25px;
  }
  #anniv_content .sale .panel .btn a {
    margin: 30px auto 0;
    width: 200px;
    height: 60px;
    font-size: 20px;
  }
  #anniv_content .sale .panel .btn span {
    margin: 30px auto 0;
    width: 200px;
    height: 60px;
    font-size: 20px;
  }
  #anniv_content .sale .sale-text {
    font-size: 20px;
    margin-top: 45px;
  }
  #anniv_content .sale .sale-btn a {
    margin: 30px auto 0;
    width: 262px;
    height: 60px;
    border: #cccccc solid 2px;
    font-size: 20px;
  }
  #anniv_content .sale .anima05 {
    top: 511px;
  }
  #anniv_content .sale .anima06 {
    top: 675px;
  }
  #anniv_content .sale .anima07 {
    bottom: -38px;
  }
}







