@charset "UTF-8";
/*
Theme Name: mizuho come s.p.a. v2.4
Author: SANGAKU
Author URI: https://mizuho.comespa.jp/
Description: come s.p.a presents 瑞穂の贈り物
Version: 2.4
*/
body {
  overflow: visible; }
  body.show {
    overflow: hidden; }

#header {
  position: relative;
  width: 100%; }
  #header h1 {
    position: absolute;
    top: 60px;
    left: 5%;
    width: 148px;
    z-index: 10; }
  #header #menu {
    border: 1px solid #1C1C1C;
    border-radius: 50vh;
    color: #1c1c1c;
    cursor: pointer;
    padding: 0.5em 4em 0.5em 1em;
    position: absolute;
    top: 60px;
    right: 5%;
    z-index: 10; }
    #header #menu span {
      position: absolute;
      top: 0;
      right: 1em;
      width: 2em;
      height: 3em; }
      #header #menu span::before, #header #menu span::after {
        content: "";
        background: #1C1C1C;
        width: 100%;
        height: 1px;
        position: absolute;
        transition: all .25s;
        z-index: 10; }
      #header #menu span::before {
        top: 16px;
        right: 0; }
      #header #menu span::after {
        bottom: 16px;
        right: 0; }
    #header #menu.show span::before {
      transform: rotate(-45deg);
      top: 20px;
      width: 90%; }
    #header #menu.show span::after {
      transform: rotate(45deg);
      bottom: 20px;
      width: 90%; }
  #header #globalNav {
    background: rgba(0, 0, 0, 0.55);
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    transition: all .25s;
    opacity: 0;
    z-index: -1; }
    #header #globalNav ul {
      background: #f7f6f0;
      box-sizing: border-box;
      display: flex;
      align-content: center;
      flex-wrap: wrap;
      padding: 0 5%;
      position: absolute;
      top: 0;
      right: -100vw;
      width: 30%;
      height: 100vh;
      transition: all .5s; }
      #header #globalNav ul li {
        font-size: 18px;
        position: relative;
        width: 100%; }
        #header #globalNav ul li a {
          display: block;
          padding: 1em; }
        #header #globalNav ul li ul {
          display: block;
          padding: 0 0 0 5%;
          position: relative;
          width: 100%;
          height: auto; }
          #header #globalNav ul li ul li {
            font-size: 16px; }
    #header #globalNav.show {
      opacity: 1;
      z-index: 5; }
      #header #globalNav.show ul {
        right: 0;
        overflow-y: scroll; }
        #header #globalNav.show ul li ul {
          right: auto; }

#footer {
  text-align: center; }
  #footer .logoBox {
    background: #262626;
    padding: 4em 0; }
    #footer .logoBox .logo {
      display: block;
      margin: 0 auto;
      width: 120px; }
  #footer .copy {
    background: #1c1c1c;
    color: #808080;
    display: flex;
    font-size: 12px;
    justify-content: space-between;
    padding: 1em 2.5%; }
    #footer .copy .links ul {
      display: flex;
      justify-content: center; }
      #footer .copy .links ul li {
        font-size: 12px; }
        #footer .copy .links ul li a {
          color: #808080;
          padding: 0 1em; }
          #footer .copy .links ul li a:hover {
            color: #FFF;
            opacity: 1; }

.content {
  padding: 120px 0; }
  .content .titleBox {
    text-align: center; }
    .content .titleBox h3 {
      font-size: 32px;
      line-height: 1.5em;
      letter-spacing: 0.1em; }
      .content .titleBox h3 .small {
        font-size: 65%; }

.inner {
  max-width: 1280px;
  margin: 0 auto; }

.btnBox {
  box-sizing: border-box;
  max-width: 1080px;
  margin: 0 auto;
  margin-top: 6em;
  text-align: center; }
  .btnBox .btn a {
    background: #3a3125;
    border: 1px solid #3a3125;
    color: #FFF;
    display: block;
    font-size: 16px;
    padding: 1em;
    width: 400px;
    margin: 0 auto; }
    .btnBox .btn a:hover {
      background: transparent;
      color: #3a3125;
      opacity: 1; }
  .btnBox .btn .comingsoon {
    border: 1px solid #3a3125;
    color: #3a3125;
    display: block;
    font-size: 16px;
    padding: 1em;
    width: 400px;
    margin: 0 auto; }
  .btnBox .note {
    margin-top: 1em; }
  .btnBox.bg {
    background: #f8f7f3;
    padding: 4em 0 4em; }
    .btnBox.bg.text {
      padding: 4em 0 3em; }

.attention {
  color: #ff3440; }
  .attention.small {
    font-size: 75%;
    vertical-align: super; }

.small {
  font-size: 83%; }

.noteBox {
  margin-top: 2em; }

.note {
  font-size: 75%;
  line-height: 1.5em; }

.red {
  color: #D50D0D; }

#top-page .kv {
  display: flex;
  width: 100%;
  height: 100vh;
  max-height: 1080px;
  position: relative;
  background: no-repeat url("images/bg_paper.jpg");
  background-size: cover; }
  #top-page .kv .imgBox {
    background: no-repeat url("images/kv_bg.jpg");
    background-size: cover;
    width: 70%; }
  #top-page .kv .txtBox {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row-reverse;
    width: 30%; }
    #top-page .kv .txtBox .title,
    #top-page .kv .txtBox .desc {
      writing-mode: vertical-rl; }
    #top-page .kv .txtBox .title {
      margin-left: 3em; }
      #top-page .kv .txtBox .title h2 {
        font-size: min(3.6vw, 60px);
        line-height: 1.4em; }
        #top-page .kv .txtBox .title h2 .txtDown {
          margin-top: 3em; }
    #top-page .kv .txtBox .desc p {
      font-size: min(1.95vw, 18px);
      line-height: 2em; }
  #top-page .kv .scroll {
    border-bottom: 1px solid #1C1C1C;
    font-size: 15px;
    position: absolute;
    right: -6em;
    bottom: 0;
    transform: rotate(-90deg);
    transform-origin: left bottom;
    z-index: 10; }
    #top-page .kv .scroll a {
      color: #3D3D3D;
      padding: 0.5em 3em 0.5em 2em; }
#top-page .kv_rice {
  width: 100%;
  height: 100vh;
  max-height: 900px;
  position: relative; }
  #top-page .kv_rice a:hover {
    opacity: 1; }
    #top-page .kv_rice a:hover .imgBox {
      opacity: 0.5; }
  #top-page .kv_rice .imgBox {
    background: no-repeat url("images/kv_bg_rice.jpg") 50% 50%;
    background-size: cover;
    width: 100%;
    height: 100%;
    transition: all .35s; }
  #top-page .kv_rice .txtBox {
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%); }
    #top-page .kv_rice .txtBox img {
      width: auto;
      height: 100%; }
  #top-page .kv_rice .scroll {
    border-bottom: 1px solid #1C1C1C;
    font-size: 15px;
    position: absolute;
    right: -6em;
    bottom: 0;
    transform: rotate(-90deg);
    transform-origin: left bottom;
    z-index: 10; }
    #top-page .kv_rice .scroll a {
      color: #3D3D3D;
      padding: 0.5em 3em 0.5em 2em; }
#top-page #nav {
  background: #f7f6f0;
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1; }
  #top-page #nav ul {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center; }
    #top-page #nav ul li {
      font-size: 16px; }
      #top-page #nav ul li a {
        display: block;
        padding: 1em 2em; }
  #top-page #nav.scrollin {
    position: fixed; }
#top-page .about {
  background: #FFF;
  box-sizing: border-box;
  padding-top: 160px;
  position: relative;
  width: 100%; }
  #top-page .about .inner {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center; }
    #top-page .about .inner h3, #top-page .about .inner p {
      writing-mode: vertical-rl; }
    #top-page .about .inner h3 {
      font-size: 36px;
      line-height: 1.5em;
      margin-left: 1em; }
    #top-page .about .inner p {
      font-size: 18px;
      margin-left: 3em;
      letter-spacing: 0.05em;
      line-height: 2.4em; }
      #top-page .about .inner p:last-child {
        margin-left: 0; }
#top-page .items {
  padding-bottom: 60px; }
  #top-page .items .imgArea {
    max-width: 1680px;
    margin: 0 auto; }
    #top-page .items .imgArea ul {
      display: flex; }
      #top-page .items .imgArea ul li {
        width: 33.333%; }
  #top-page .items .titleBox {
    margin-bottom: 4em; }
  #top-page .items .txt {
    font-size: 16px;
    line-height: 2.2em;
    text-align: center; }
    #top-page .items .txt p {
      margin-bottom: 1em; }
      #top-page .items .txt p:last-child {
        margin-bottom: 0; }
#top-page .rice,
#top-page .udon,
#top-page .mochi {
  background: no-repeat url("images/bg_paper.jpg");
  background-size: cover; }
#top-page .rice .bnrArea {
  max-width: 1680px;
  margin: 0 auto;
  padding: 0 5% 120px; }
  #top-page .rice .bnrArea a {
    display: block; }
  #top-page .rice .bnrArea .txtBox {
    margin-top: 4em; }
    #top-page .rice .bnrArea .txtBox .txt {
      font-size: 20px; }
    #top-page .rice .bnrArea .txtBox .btnBox {
      margin-top: 4em; }
#top-page .rice .itemArea {
  max-width: 1680px;
  margin: 0 auto;
  padding-bottom: 160px; }
  #top-page .rice .itemArea ul {
    display: flex;
    justify-content: space-between;
    padding: 0 10%; }
    #top-page .rice .itemArea ul li {
      width: 22.5%; }
      #top-page .rice .itemArea ul li .imgBox {
        margin-bottom: 2em; }
      #top-page .rice .itemArea ul li .txtBox {
        font-size: 16px;
        text-align: center; }
      #top-page .rice .itemArea ul li .btnBox {
        margin-top: 2em; }
        #top-page .rice .itemArea ul li .btnBox .btn a {
          box-sizing: border-box;
          width: 100%; }
#top-page .fruit {
  background: #FFF;
  padding-bottom: 0; }
  #top-page .fruit .btnWrap {
    padding-top: 80px;
    padding-bottom: 120px; }
  #top-page .fruit .btnBox {
    margin-top: 40px;
    padding-bottom: 120px; }
#top-page .special {
  background: #FFF;
  text-align: center;
  padding-bottom: 120px; }
  #top-page .special .bnrBox {
    margin: 0 auto;
    max-width: 1080px;
    margin-bottom: 2em; }
  #top-page .special .txt {
    font-size: 16px;
    line-height: 2em; }
#top-page .news {
  background: no-repeat url("images/bg_paper.jpg");
  background-size: cover; }
  #top-page .news .titleBox {
    margin-bottom: 4em; }
  #top-page .news .newsBox {
    max-width: 800px;
    margin: 0 auto; }
    #top-page .news .newsBox ul {
      border-top: 1px solid #DCDCDC; }
      #top-page .news .newsBox ul li {
        border-bottom: 1px solid #DCDCDC;
        display: flex;
        padding-left: 1em;
        padding-right: 1em; }
        #top-page .news .newsBox ul li a {
          display: inherit;
          padding: 1em 0; }
        #top-page .news .newsBox ul li .date {
          min-width: 8em; }

.fadeIn_up {
  opacity: 0;
  transform: translate(0, 20%);
  transition: 0.8s; }
  .fadeIn_up.is-show {
    transform: translate(0, 0);
    opacity: 1; }

.slideIn_left {
  opacity: 0;
  transform: translate(-20%, 0);
  transition: 0.8s; }
  .slideIn_left.is-show {
    transform: translate(0, 0);
    opacity: 1; }

.slideIn_right {
  opacity: 0;
  transform: translate(20%, 0);
  transition: 0.8s; }
  .slideIn_right.is-show {
    transform: translate(0, 0);
    opacity: 1; }

.fadeIn {
  opacity: 0;
  transition: 0.8s; }
  .fadeIn.is-show {
    opacity: 1; }

.slow {
  transition: 1.6s; }

.delay1 {
  transition-delay: 0.2s; }

.delay2 {
  transition-delay: 0.4s; }

.delay3 {
  transition-delay: 0.6s; }

.delay4 {
  transition-delay: 0.8s; }

.delay5 {
  transition-delay: 1.0s; }

.tab {
  display: none; }
