@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho&display=swap');
.page-ochugen {
  overflow-x: hidden;
  background-color: #EAFBFF;
}

.page-ochugen picture {
  display: block;
  width: 100%;
}
.page-ochugen img {
  display: block;
  height: auto;
}
/* .ochugen-h1 {border-bottom: solid #0D2C50;} */
.ochugen-h2 img {
  margin: 0 auto;
}
.ochugen-txt {
  line-height: 2;
  color: #333;
}

/* intro */
.ochugen-intro-inner {
  background-color: #fff;
}
.ochugen-intro-inner::before,
.ochugen-intro-inner::after {
  position: absolute;
  content: "";
  background: no-repeat center / contain;
}
.ochugen-intro-inner::before {
  background-image: url(../../../../img/usr/freepage/ochugen/intro.png);
}
.ochugen-intro-inner::after {
  background-image: url(../../../../img/usr/freepage/ochugen/intro_txt.png);
}
.intro .ochugen-h2 img {
  margin: 0;
}

/* gift */
.ochugen-sec.gift {
  background: url(../../../../img/usr/freepage/ochugen/gift_bg.png) no-repeat center top;
}
.ochugen-gift-main {
  background-color: #fff;
}
.ochugen-gift-main-head-icon {
  position: absolute;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
  font-family: "Zen Old Mincho", serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1;
  color: #fff;
  border-radius: 50%;
  background-color: #BC9159;
}
.ochugen-gift-main-head-detail dt picture {
  position: relative;
  z-index: 2;
}
.ochugen-gift-main-head-detail dd {
  margin-top: 32px;
  padding-top: 32px;
  text-align: center;
  border-top: 2px dotted #333;
}
.ochugen-gift-main-head-detail dd > *:first-child {
  margin-top: 0;
}
.ochugen-gift-main-head-img {
  width: 100%;
}

/* other */
.ochugen-sec.other {
  position: relative;
  z-index: 0;
}
.ochugen-sec.other::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  background-color: #fff;
}

@media only screen and (max-width: 768px) {
  .page-ochugen {
    padding-top: 54px;
  }
  .page-ochugen img {
    width: 100%;
    height: auto;
  }
  .ochugen-h1 {
    padding: 0;
    border-bottom-width: 16px;
  }
  .ochugen-txt {
    margin: 32px 0 0;
    font-size: 15px;
  }

  /* intro */
  .ochugen-sec.intro {
    margin-top: calc(100 / 375 * 100vw);
  }
  .ochugen-intro-inner {
    margin: 0 40px 0 0;
    padding: calc(260 / 375 * 100vw) 20px 40px;
    position: relative;
  }
  .ochugen-intro-inner::before {
    top: -60px;
    right: -20px;
    width: calc(315 / 375 * 100vw);
    height: calc(253 / 375 * 100vw);
  }
  .ochugen-intro-inner::after {
    top: calc(194 / 375 * 100vw);
    right: -50px;
    width: calc(185 / 375 * 100vw);
    height: calc(59 / 375 * 100vw);
  }
  .intro .ochugen-h2 img {
    width: auto;
    /* height: calc(59 / 375 * 100vw); */
  }

  /* gift */
  .ochugen-sec.gift {
    padding: 40px 20px 30px;
    background-size: auto 100%;
  }
  .gift .ochugen-h2 img {
    width: auto;
    height: calc(60 / 375 * 100vw);
  }
  .ochugen-gift-main {
    margin: 30px 0 0;
    padding: 60px 20px 40px;
  }
  .ochugen-gift-main-head {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    gap: 20px;
    position: relative;
  }
  .ochugen-gift-main-head-icon {
    top: -30px;
    width: 80px;
    height: 80px;
    font-size: 16px;
  }
  .ochugen-gift-main-head-icon b {
    font-size: 22px;
    font-weight: 500;
  }

  .ochugen-gift-main-foot {
    margin: 30px 0 0;
  }
  .ochugen-gift-main-foot-item + .ochugen-gift-main-foot-item {
    margin-top: 40px;
  }
  .ochugen-gift-main-foot-hdg {
    margin: 0 auto;
    padding: 5px 10px;
    width: calc(100% - 10px);
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 5px solid #fff;
    background-color: #135D9F;
    position: relative;
  }
  .ochugen-gift-main-foot-hdg::after {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    width: calc(100% + 10px);
    height: 50px;
    transform: translate(-50%, -50%);
    border: 1px solid #135D9F;
  }
  .ochugen-gift-main-foot-hdg img {
    width: auto;
    height: 18px;
  }
  .ochugen-gift-main-foot-list {
    margin: 10px 0 0;
    display: flex;
    gap: 20px;
  }
  .ochugen-gift-main-foot-list-item {
    width: calc((100% - 20px) / 2);
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-end;
    gap: 10px;
  }
  .ochugen-gift-main-foot-detail {
    flex: 1;
    display: flex;
    flex-direction: column;
  }
  .ochugen-gift-main-foot-name {
    font-size: 15px;
    line-height: 1.53;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 3;
  }
  .ochugen-gift-main-foot-price {
    margin-top: auto;
    padding-top: 9px;
    font-size: 18px;
    font-weight: bold;
    text-align: right;
    line-height: 1;
  }
  .ochugen-gift-main-foot-price .tax {
    margin-left: .5em;
    font-size: 12px;
    font-weight: 500;
  }
  .ochugen-gift-main-foot-btn {
    margin-top: 12px;
    padding: 5px 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    font-size: 13px;
    font-weight: 500;
    text-align: center;
    color: #fff;
    border-radius: 25px;
    background-color: #DD4350;
    position: relative;
  }

  /* other */
  .ochugen-sec.other {
    padding: 60px 40px 80px;
  }
  .ochugen-sec.other::after {
    height: calc(570 / 375 * 100vw);
  }
  .other .ochugen-h2 img {
    width: auto;
    height: calc(52 / 375 * 100vw);
  }
  .other .ochugen-gift-main-foot-list {
    margin: 24px 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 40px 20px;
  }

  /* wrapping */
  .ochugen-sec.wrapping {
    padding-top: 80px;
    position: relative;
    z-index: 0;
  }
  .ochugen-sec.wrapping::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    z-index: -1;
    width: calc(335 / 375 * 100vw);
    height: calc(240 / 375 * 100vw);
    background-color: #0D2C50;
  }
  .ochugen-wrapping-inner {
    margin-left: 40px;
    padding: calc(290 / 375 * 100vw) 20px 40px;
    text-align: left;
    background-color: #fff;
    position: relative;
  }
  .ochugen-wrapping-inner::before,
  .ochugen-wrapping-inner::after {
    position: absolute;
    content: "";
    background: no-repeat center / contain;
  }
  .ochugen-wrapping-inner::before {
    top: -30px;
    left: -40px;
    width: calc(217 / 375 * 100vw);
    height: calc(125 / 375 * 100vw);
    background-image: url(../../../../img/usr/freepage/ochugen/wrapping_txt.png);
  }
  .ochugen-wrapping-inner::after {
    top: 42px;
    right: 20px;
    width: calc(288 / 375 * 100vw);
    height: calc(206 / 375 * 100vw);
    background-image: url(../../../../img/usr/freepage/ochugen/wrapping_img.png);
  }
  .wrapping .ochugen-h2 img {
    margin: 0;
    width: auto;
    height: calc(58 / 375 * 100vw);
  }

  /* detail */
  .ochugen-sec.detail {
    margin-top: 80px;
    padding: 0 20px 40px;
    text-align: center;
    position: relative;
    z-index: 0;
  }
  .ochugen-sec.detail::after {
    position: absolute;
    content: "";
    left: 0;
    bottom: 0;
    z-index: -1;
    width: 100%;
    height: calc(96 / 375 * 100vw);
    background-color: #888;
  }
  .detail .ochugen-h2 img {
    width: auto;
    height: calc(16 / 375 * 100vw);
  }
  .ochugen-detail-bnr {
    margin-top: 20px;
  }
  .ochugen-detail-bnr img {
    margin: 0 auto;
  }

/* ---------------------------anime css---------------------------- */
  .ochugen-sec.gift{
    background: url(../../../../img/usr/freepage/ochugen/gift_bg.png) no-repeat;
    padding: 30px 20px 30px;
  }

  .ochugen-gift-main-foot-btn{font-size: 13px;}

  .ochugen-sec.other{background: #F1F1F1;}
  .ochugen-sec.wrapping{
    z-index: 1;
    padding-top: 0;
  }
  .ochugen-sec.wrapping .ochugen-wrapping-inner{
    top: 71px;
    z-index: 1;
  }

  .ochugen-sec.other .ochugen-h2{
    width: auto;
    margin: 0 auto;
    position: relative;
  }

  .ochugen-sec.other .ochugen-h2:after{
    position: absolute;
    bottom: -30px;
    left: 0;
    width: 100%;
    height: 10.5px;
    content: "";
    background: url(../../../../img/usr/freepage/ochugen/deco_line.png);
    background-size: 100% auto;
  }

  /* ---------- mv anime ---------- */
  .ochugen-mv{
    position: relative; 
    overflow: hidden;
    background: url(../../../../img/usr/freepage/ochugen/mv_pc_bg.jpg) no-repeat left center / cover;
  }

  .ochugen-h1{
    position: relative;
    z-index: 2;
    background: none;
    padding: 120px 45px;
    font-size: 0;
    opacity: 0;
    animation: simple_zoom 1s ease-in-out 1 forwards;
  }

  .ochugen-mv .deco-anime p,
  .ochugen-mv .deco-firework p,
  .ochugen-mv .deco-maple p,
  .ochugen-mv .deco-whirlpool p{
    font-size: 0;
    position: absolute;
    z-index: 1;
  }

  /* 金魚 */
  .ochugen-mv .deco-anime p{
    left: 118px;
    bottom: 70px;
    width: 189px;
    height: 183px;
    background: url(../../../../img/usr/freepage/ochugen/mv_deco02.png) no-repeat;
    background-size: 183px auto;
    animation: flyUp 25s linear infinite;
  }

  @keyframes flyUp {
    0% {
      bottom: -50%;
      left: 20%;
      transform: rotate(0deg);
      opacity: 1;
    }
    10%{transform: rotate(20deg);opacity: 0.98;}
    20%{transform: rotate(5deg);opacity: 1;}
    30%{transform: rotate(18deg);opacity: 0.88;}
    40%{transform: rotate(3deg);opacity: 0.8;}
    50%{transform: rotate(16deg);opacity: 0.9;}
    60%{transform: rotate(0deg);opacity: 0.76;}
    70%{transform: rotate(18deg);opacity: 0.7;}
    80%{transform: rotate(0deg);opacity: 0.68;}    
    90%{transform: rotate(16deg);opacity: 0.6;}
    100% {
      bottom: 130%;
      left: -30%;
      transform: rotate(0deg);
      opacity: 0.3;
    }
  }

  /* 花火 */
  .ochugen-mv .deco-firework p{
    animation: simple_zoom 0.5s ease-in-out 1 forwards;
    animation-delay: 1s;
    opacity: 0;
  }

  .ochugen-mv .deco-firework p:nth-child(1){
    right: 10px;
    top: 10px;
    width: 112px;
    height: 109.5px;
    background: url(../../../../img/usr/freepage/ochugen/mv_deco01.png) no-repeat;
    background-size: 112px auto;
  }

  .ochugen-mv .deco-firework p:nth-child(2){
    left: -15%;
    bottom: 20%;
    width: 112px;
    height: 109.5px;
    background: url(../../../../img/usr/freepage/ochugen/mv_deco01.png) no-repeat;
    background-size: 112px auto;
  }

  @keyframes simple_zoom {
    0% {opacity: 0;}
    100% {opacity: 1;}
  }
  
  /* もみじ */
  .ochugen-mv .deco-maple p{
    animation: simple_zoom 0.5s ease-in-out 1 forwards;
    animation-delay: 1.5s;
    opacity: 0;    
  }
  
  .ochugen-mv .deco-maple p:nth-child(1){
    left: 10px;
    bottom: 10px;
    width: 34px;
    height: 38.5px;
    background: url(../../../../img/usr/freepage/ochugen/mv_m_deco01.png) no-repeat;
    background-size: 34px auto;
  }

  .ochugen-mv .deco-maple p:nth-child(2){
    right: 0;
    bottom: 30%;
    width: 34px;
    height: 38.5px;
    background: url(../../../../img/usr/freepage/ochugen/mv_m_deco02.png) no-repeat;
    background-size: 34px auto;
  }  

  .ochugen-mv .deco-maple p:nth-child(3){    
    left: 100px;
    top: 50px;
    width: 34px;
    height: 38.5px;
    background: url(../../../../img/usr/freepage/ochugen/mv_m_deco02.png) no-repeat;
    background-size: 34px auto;    
  }    

  /* うずまき */  
  .ochugen-mv .deco-whirlpool p{
    animation: simple_zoom 0.5s ease-in-out 1 forwards;
    animation-delay: 2s;
    opacity: 0;   
    right: -10%;
    bottom: -10%;
    width: 170px;
    height: 170px;
    background: url(../../../../img/usr/freepage/ochugen/mv_whirlpool.png) no-repeat;
    background-size: 170px auto;
  }
  
  /* intro */
  .ochugen-cont-deco-m p:nth-child(1){
    position: absolute;
    right: -33px;
    bottom: 15px;
    width: 74px;
    height: 77px;
    font-size: 0;
    background: url(../../../../img/usr/freepage/ochugen/sp_deco.png) no-repeat;
    background-size: 74px auto;
  }

  .ochugen-cont-deco-m p:nth-child(2){display: none;}

  /* gift */
  .ochugen-sec.gift{
    padding: 56px 15px 30px;
    background-size: cover;
  }
  .ochugen-sec.gift .page-ochugen .ochugen-gift-main-foot-img img{width: 100%;}
  .ochugen-sec.gift .ochugen-gift-main-foot-list{padding: 0 10px;}
  .ochugen-sec.gift .ochugen-gift-main-foot-name{min-height: 63px;}

  /* wrapping */
  .ochugen-sec.wrapping::after {
    position: absolute;
    content: "";
    top: 111px;
    right: 0;
    left: auto;
    z-index: -1;
    width: 50%;
    height: calc(100% - 40px);
    background-color: #fff;
    /* transform: translateY(-50%); */
  }

  /* other */
  .ochugen-sec.other .ochugen-gift-main-foot-list{margin: 60px auto 0;}

  /* trivia */
  .page-ochugen {position: relative;}
  .page-ochugen:after{
    position: absolute;
    content: "";
    bottom: 7px;
    left: 0;
    width: 100%;
    height: 17px;
    background: rgba(255, 255, 255, 0.6);
  }  
  
  .ochugen-sec.trivia{
    position: relative;
    padding-top: 170px;    
    padding-bottom: 50px;
    background: #CFF7FE;
    border-bottom: solid 7px #fff;
    overflow: hidden;
    padding-left: 15px;
    padding-right: 15px;    
  }

  .ochugen-sec.trivia:before{
    position: absolute;
    content: "";
    bottom: -100px;
    left: -60px;
    width: 229.5px;
    height: 229px;
    background: url(../../../../img/usr/freepage/ochugen/whirlpool.png);
    background-size: 229.5px auto;
    z-index: 1;
  }

  .ochugen-sec.trivia:after{
    display: none;
    position: absolute;
    content: "";
    top: -30px;
    right: -85px;
    width: 459px;
    height: 458px;
    background: url(../../../../img/usr/freepage/ochugen/whirlpool.png);
    z-index: 1;
  }  

  .ochugen-sec.trivia .ochugen-wrapping-deco-inner{
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    background: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
    z-index: 2;    
  }
  
  .ochugen-sec.trivia .ochugen-wrapping-deco-inner:before{
    position: absolute;
    content: "";
    top: 0px;
    left: -15px;
    width: 58.5px;
    height: 53.5px;
    background: url(../../../../img/usr/freepage/ochugen/goldfish01.png);
    background-size: 58.5px auto;
    z-index: 1;
  }
 
  .ochugen-sec.trivia .ochugen-wrapping-deco-inner:after{
    display: none;
    position: absolute;
    content: "";
    bottom: -20px;
    right: -80px;
    width: 168px;
    height: 174px;
    background: url(../../../../img/usr/freepage/ochugen/goldfish02.png);
    z-index: 1;
  }  

  .ochugen-sec.trivia .ochugen-wrapping-one-inner{position: relative;}
  .ochugen-sec.trivia .ochugen-wrapping-one-inner:after{
    position: absolute;
    top: -23px;
    left: 0;
    width: 100%;
    height: 23px;
    content: "";
    background: url(../../../../img/usr/freepage/ochugen/deco_bg.png);
    z-index: 1;
  }

  .ochugen-sec.trivia .ochugen-wrapping-box{
    position: relative;
    padding: 30px 30px 46px;
  }

  .ochugen-sec.trivia .ochugen-wrapping-box:before{
    position: absolute;
    content: "";
    top: 100px;
    left: -100px;
    width: 58px;
    height: 55px;
    background: url(../../../../img/usr/freepage/ochugen/wind.png) no-repeat;
    z-index: 1;
  }

  .ochugen-sec.trivia .ochugen-wrapping-box:after{
    position: absolute;
    content: "";
    bottom: 160px;
    right: -120px;
    width: 74px;
    height: 77px;
    background: url(../../../../img/usr/freepage/ochugen/mv_deco04.png) no-repeat;
    z-index: 1;
  }  


  .ochugen-sec.trivia .ochugen-txt-area{
    padding: 25px 0 0;
    position: relative;
  }

  .ochugen-sec.trivia .ochugen-txt-area:after{
    position: absolute;
    content: "";
    bottom: -45px;
    right: -24px;
    width: 85px;
    height: 71px;
    background: url(../../../../img/usr/freepage/ochugen/midyear_gift.png);
    background-size: 85px auto;
    z-index: 1;    
  }

  .ochugen-sec.trivia .ochugen-txt-area p{
    border-bottom: solid 1px #D8D8D8;
    font-size: 15px;
    padding: 8px 0;
  }
}

/* ---------------------------anime css---------------------------- */
@media only screen and (min-width: 769px) {
  .ochugen-h1 {
    padding: 0 15px;
    display: flex;
    align-items: center;
    height: 650px;
    border-bottom-width: 20px;
    background: url(../../../../img/usr/freepage/ochugen/mv_pc_bg.jpg) no-repeat left center / cover;
  }

  .ochugen-h1 picture {
    margin: 0 auto;
    max-width: 755px;
  }

  .ochugen-txt {
    margin: 40px 0 0;
    font-size: 16px;
  }
  .ochugen-txt + .ochugen-txt {
    margin-top: 30px;
  }

  /* intro */
  .ochugen-sec.intro {
    margin-top: 200px;
    position: relative;
    z-index: 0;
  }
  .ochugen-sec.intro::after {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    z-index: -1;
    width: 50%;
    height: 100%;
    background-color: #fff;
    transform: translateY(-50%);
  }

  .ochugen-intro-inner {
    margin: 0 auto;
    padding: 80px 55px 60px min(600px, 50%);
    max-width: 1200px;
    position: relative;
  }
  .ochugen-intro-inner::before {
    top: -60px;
    right: calc(50% + 80px);
    width: 778px;
    height: 624px;
  }
  .ochugen-intro-inner::after {
    top: -80px;
    right: -130px;
    width: 368.5px;
    height: 152px;
  }

  /* gift */
  .ochugen-sec.gift {
    margin-top: 100px;
    padding: 60px 15px 80px;
    background-size: cover;
  }
  .ochugen-gift-main {
    margin: 50px auto 0;
    padding: 65px 75px;
    max-width: 1200px;
  }
  .ochugen-gift-main-head {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
  }
  .ochugen-gift-main-head-detail {
    padding: 0 40px;
    width: 100%;
    position: relative;
  }
  .ochugen-gift-main-head-icon {
    top: -50px;
    width: 100px;
    height: 100px;
    font-size: 20px;
  }
  .ochugen-gift-main-head-icon b {
    font-size: 28px;
    font-weight: 500;
  }
  .ochugen-gift-main-head-detail dd {
    margin-top: 32px;
    padding-top: 32px;
    text-align: center;
    border-top: 2px dotted #333;
  }
  .ochugen-gift-main-head-detail dd > *:first-child {
    margin-top: 0;
  }
  .ochugen-gift-main-head-img {
    width: 100%;
  }

  .ochugen-gift-main-foot {
    margin: 56px 0 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 56px;
  }
  .ochugen-gift-main-foot-item {
    width: calc((100% - 56px) / 2);
    min-width: 480px;
  }
  .ochugen-gift-main-foot-hdg {
    margin: 0 auto;
    padding: 5px 10px;
    width: calc(100% - 10px);
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 5px solid #fff;
    background-color: #135D9F;
    position: relative;
  }
  .ochugen-gift-main-foot-hdg::after {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    width: calc(100% + 10px);
    height: 54px;
    transform: translate(-50%, -50%);
    border: 1px solid #135D9F;
  }
  .ochugen-gift-main-foot-list {
    margin: 20px 0 0;
    display: flex;
    gap: 30px;
  }
  .ochugen-gift-main-foot-list-item {
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-end;
    gap: 12px;
  }
  .ochugen-gift-main-foot-detail {
    flex: 1;
    display: flex;
    flex-direction: column;
  }
  .ochugen-gift-main-foot-name {
    font-size: 13px;
    line-height: 1.53;
  }
  .ochugen-gift-main-foot-price {
    margin-top: auto;
    padding-top: 12px;
    font-size: 20px;
    font-weight: bold;
    text-align: right;
    line-height: 1;
  }
  .ochugen-gift-main-foot-price .tax {
    margin-left: .5em;
    font-size: 12px;
    font-weight: 500;
  }
  .ochugen-gift-main-foot-btn {
    position: relative;
    margin-top: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    border-radius: 25px;
    background-color: #DD4350;
    position: relative;
    transition: .3s ease;
  }

  .ochugen-gift-main-foot-img a {
    transition: .3s ease;
  }
  .ochugen-gift-main-foot-btn:hover,
  .ochugen-gift-main-foot-img a:hover {
    opacity: .7;
  }
  /* .ochugen-gift-main-foot-btn::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 30px;
    width: 16px;
    height: 18px;
    background: url(../../../../img/usr/freepage/ochugen/cart.png) no-repeat center / contain;
    transform: translateY(-50%);
  } */

  /* other */
  .ochugen-sec.other {
    padding: 100px 15px 80px;
  }
  .ochugen-sec.other::after {
    height: 450px;
  }
  .ochugen-gift-main-foot-list {
    margin: 40px auto 0;
    max-width: 1200px;
    display: flex;
    gap: 40px 20px;
  }
  .other .ochugen-gift-main-foot-list {
    flex-wrap: wrap;
    justify-content: center;
  }
  .other .ochugen-gift-main-foot-list-item {
    width: calc((100% - 20px * 3) / 4);
    min-width: 250px;
  }
  .other .ochugen-gift-main-foot-name {
    font-size: 16px;
  }
  .other .ochugen-gift-main-foot-price {
    font-size: 24px;
  }
  .other .ochugen-gift-main-foot-price .tax {
    font-size: 14px;
  }
  .other .ochugen-gift-main-foot-btn {
    font-size: 16px;
  }

  /* wrapping */
  .ochugen-sec.wrapping {
    padding-top: 105px;
    position: relative;
    z-index: 0;
  }
  .ochugen-sec.wrapping::before,
  .ochugen-sec.wrapping::after {
    position: absolute;
    content: "";
    top: 0;
    z-index: -1;
    height: calc(100% - 70px);
    background-color: #EAFBFF;
  }
  .ochugen-sec.wrapping::before {
    left: 50%;
    width: 100%;
    max-width: 1200px;
    transform: translateX(-50%);
  }
  .ochugen-sec.wrapping::after {
    left: 0;
    width: 100%;
  }
  .ochugen-wrapping-inner {
    margin: 0 auto;
    padding: 90px min(550px, 50%) 70px 75px;
    max-width: 1200px;
    text-align: left;
    background-color: #fff;
    position: relative;
    z-index: 0;
  }
  .ochugen-wrapping-inner::before,
  .ochugen-wrapping-inner::after {
    position: absolute;
    content: "";
    background: no-repeat center / contain;
  }
  .ochugen-wrapping-inner::before {
    top: -116px;
    left: -200px;
    width: 404px;
    height: 232px;
    background-image: url(../../../../img/usr/freepage/ochugen/wrapping_txt.png);
  }
  .ochugen-wrapping-inner::after {
    top: -30px;
    right: 70px;
    z-index: -1;
    width: 415px;
    height: 297px;
    background-image: url(../../../../img/usr/freepage/ochugen/wrapping_img.png);
  }
  .wrapping .ochugen-h2 img {
    margin: 0;
  }

  /* detail */
  .ochugen-sec.detail {
    margin-top: 80px;
    padding-bottom: 40px;
    text-align: center;
    position: relative;
    z-index: 0;
  }
  .ochugen-sec.detail::after {
    position: absolute;
    content: "";
    left: 0;
    bottom: 0;
    z-index: -1;
    width: 100%;
    height: 140px;
    background-color: #888;
  }
  .ochugen-detail-bnr {
    margin-top: 30px;
  }
  .ochugen-detail-bnr a {
    margin: 0 auto;
    width: fit-content;
    display: block;
    transition: .3s ease-in;
    /* overflow: hidden; */
  }
  .ochugen-detail-bnr img {
    margin: 0 auto;
    transition: .2s ease-out;
  }
  .ochugen-detail-bnr a:hover {
    transform: translateY(-10px);
  }
  /* .ochugen-detail-bnr a:hover img {
    transform: scale(1.1);
  } */


  .ochugen-sec.gift{
    background: url(../../../../img/usr/freepage/ochugen/gift_bg.png) no-repeat;
    background-size: cover;
    padding: 56px 15px 0;
  }

  .ochugen-gift-main-foot-btn{
    font-size: 13px;
    padding-left: 20px;
  }

  .ochugen-gift-main-foot-btn::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    padding-left: 12px;
    width: 16px;
    height: 18px;
    background: url(../../../../img/usr/freepage/ochugen/icon_cart.png) no-repeat center / contain;
    transform: translate(-85px, -50%);
  }

  .ochugen-sec.other{background: #F1F1F1;}
  .ochugen-sec.wrapping{
    z-index: 1;
    padding-top: 40px;
  }
  .ochugen-sec.wrapping .ochugen-wrapping-inner{
    top: 71px;
    z-index: 1;
  }

  .ochugen-sec.other .ochugen-h2{
    width: 400px;
    margin: 0 auto;
    position: relative;
  }

  .ochugen-sec.other .ochugen-h2:after{
    position: absolute;
    bottom: -30px;
    left: 0;
    width: 392px;
    height: 21px;
    content: "";
    background: url(../../../../img/usr/freepage/ochugen/deco_line.png);

  }

  /* ---------- mv anime ---------- */
  .ochugen-mv{
    position: relative; 
    overflow: hidden;
    background: url(../../../../img/usr/freepage/ochugen/mv_pc_bg.jpg) no-repeat left center / cover;
  }

  .ochugen-h1{
    position: relative;
    z-index: 2;
    background: none;
    padding-top: 80px;
    font-size: 0;
    opacity: 0;
    animation: simple_zoom 1s ease-in-out 1 forwards;
  }

  .ochugen-mv .deco-anime p,
  .ochugen-mv .deco-firework p,
  .ochugen-mv .deco-maple p,
  .ochugen-mv .deco-whirlpool p{
    font-size: 0;
    position: absolute;
    z-index: 1;
  }

  /* 金魚 */
  .ochugen-mv .deco-anime p{
    left: 118px;
    bottom: 70px;
    width: 378px;
    height: 366px;
    background: url(../../../../img/usr/freepage/ochugen/mv_deco02.png);
    animation: flyUp 25s linear infinite;
  }

  @keyframes flyUp {
    0% {
      bottom: -50%;
      left: 20%;
      transform: rotate(0deg);
      opacity: 1;
    }
    10%{transform: rotate(20deg);opacity: 0.98;}
    20%{transform: rotate(5deg);opacity: 1;}
    30%{transform: rotate(18deg);opacity: 0.88;}
    40%{transform: rotate(3deg);opacity: 0.8;}
    50%{transform: rotate(16deg);opacity: 0.9;}
    60%{transform: rotate(0deg);opacity: 0.76;}
    70%{transform: rotate(18deg);opacity: 0.7;}
    80%{transform: rotate(0deg);opacity: 0.68;}    
    90%{transform: rotate(16deg);opacity: 0.6;}
    100% {
      bottom: 130%;
      left: -10%;
      transform: rotate(0deg);
      opacity: 0.3;
    }
  }

  /* 花火 */
  .ochugen-mv .deco-firework p{
    animation: simple_zoom 0.5s ease-in-out 1 forwards;
    animation-delay: 1s;
    opacity: 0;
  }

  .ochugen-mv .deco-firework p:nth-child(1){
    left: -61px;
    top: 68px;
    width: 224px;
    height: 219px;
    background: url(../../../../img/usr/freepage/ochugen/mv_deco01.png);
  }

  .ochugen-mv .deco-firework p:nth-child(2){
    right: 171px;
    top: 92px;
    width: 224px;
    height: 219px;
    background: url(../../../../img/usr/freepage/ochugen/mv_deco01.png);
  }

  @keyframes simple_zoom {
    0% {opacity: 0;}
    100% {opacity: 1;}
  }
  
  /* もみじ */
  .ochugen-mv .deco-maple p{
    animation: simple_zoom 0.5s ease-in-out 1 forwards;
    animation-delay: 2s;
    opacity: 0;    
  }
  
  .ochugen-mv .deco-maple p:nth-child(1){
    right: 33px;
    top: 134px;
    width: 74px;
    height: 77px;
    background: url(../../../../img/usr/freepage/ochugen/mv_m_deco02.png);
  }

  .ochugen-mv .deco-maple p:nth-child(2){
    right: 323px;
    bottom: 20px;
    width: 74px;
    height: 77px;
    background: url(../../../../img/usr/freepage/ochugen/mv_m_deco02.png);
  }  

  .ochugen-mv .deco-maple p:nth-child(3){
    left: 432px;
    top: 100px;
    width: 74px;
    height: 77px;
    background: url(../../../../img/usr/freepage/ochugen/mv_m_deco02.png);
  }    

  /* うずまき */  
  .ochugen-mv .deco-whirlpool p{
    animation: simple_zoom 0.5s ease-in-out 1 forwards;
    animation-delay: 3s;
    opacity: 0;   
    right: 53px;
    bottom: 60px;
    width: 340px;
    height: 340px;
    background: url(../../../../img/usr/freepage/ochugen/mv_whirlpool.png);
  }
  
  /* intro */
   .ochugen-intro-inner::before{
      top: -80px;
      width: 724px;
      height: 635px;
  }

  .ochugen-intro-inner::after{right: -100px;}

  .ochugen-cont-deco-m p:nth-child(1){
    position: absolute;
    left: 27%;
    top: 56%;
    width: 74px;
    height: 77px;
    font-size: 0;
    background: url(../../../../img/usr/freepage/ochugen/mv_deco04.png);
  }

  .ochugen-cont-deco-m p:nth-child(2){
    position: absolute;
    right: -15%;
    top: 40%;
    width: 120px;
    height: 289px;
    font-size: 0;
    background: url(../../../../img/usr/freepage/ochugen/intro_deco.png) no-repeat;
  }  

  /* gift */
  .ochugen-sec.gift{padding: 56px 15px 65px;}
  .ochugen-sec.gift .page-ochugen .ochugen-gift-main-foot-img img{width: 100%;}
  .ochugen-sec.gift .ochugen-gift-main-foot-list{padding: 0 10px;}
  .ochugen-sec.gift .ochugen-gift-main-foot-name{min-height: 63px;}

  /* wrapping */
  .ochugen-sec.wrapping::after {
    position: absolute;
    content: "";
    top: 111px;
    right: 0;
    left: auto;
    z-index: -1;
    width: 50%;
    height: calc(100% - 40px);
    background-color: #fff;
    /* transform: translateY(-50%); */
  }

  /* other */
  .ochugen-sec.other .ochugen-gift-main-foot-list{
    margin: 60px auto 0;
  }


  /* trivia */
  .page-ochugen {position: relative;}
  .page-ochugen:after{
    position: absolute;
    content: "";
    bottom: 7px;
    left: 0;
    width: 100%;
    height: 17px;
    background: rgba(255, 255, 255, 0.6);
  }  
  
  .ochugen-sec.trivia{
    position: relative;
    padding-top: 170px;    
    padding-bottom: 100px;
    background: #CFF7FE;
    border-bottom: solid 7px #fff;
    overflow: hidden;
  }

  .ochugen-sec.trivia:before{
    position: absolute;
    content: "";
    bottom: -140px;
    left: -95px;
    width: 459px;
    height: 458px;
    background: url(../../../../img/usr/freepage/ochugen/whirlpool.png);
    z-index: 1;
  }

  .ochugen-sec.trivia:after{
    position: absolute;
    content: "";
    top: -30px;
    right: -85px;
    width: 459px;
    height: 458px;
    background: url(../../../../img/usr/freepage/ochugen/whirlpool.png);
    z-index: 1;
  }  

  .ochugen-sec.trivia .ochugen-wrapping-deco-inner{
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    background: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
    z-index: 2;    
  }
  
  .ochugen-sec.trivia .ochugen-wrapping-deco-inner:before{
    position: absolute;
    content: "";
    top: -40px;
    left: -95px;
    width: 117px;
    height: 107px;
    background: url(../../../../img/usr/freepage/ochugen/goldfish01.png);
    z-index: 1;
  }
 
  .ochugen-sec.trivia .ochugen-wrapping-deco-inner:after{
    position: absolute;
    content: "";
    bottom: -20px;
    right: -80px;
    width: 168px;
    height: 174px;
    background: url(../../../../img/usr/freepage/ochugen/goldfish02.png);
    z-index: 1;
  }  

  .ochugen-sec.trivia .ochugen-wrapping-one-inner{position: relative;}
  .ochugen-sec.trivia .ochugen-wrapping-one-inner:after{
    position: absolute;
    top: -23px;
    left: 0;
    width: 1200px;
    height: 23px;
    content: "";
    background: url(../../../../img/usr/freepage/ochugen/deco_bg.png);
    z-index: 1;
  }

  .ochugen-sec.trivia .ochugen-wrapping-box{
    position: relative;
    padding: 30px 30px 46px;
  }

  .ochugen-sec.trivia .ochugen-wrapping-box:before{
    position: absolute;
    content: "";
    top: 100px;
    left: -100px;
    width: 58px;
    height: 55px;
    background: url(../../../../img/usr/freepage/ochugen/wind.png) no-repeat;
    z-index: 1;
  }

  .ochugen-sec.trivia .ochugen-wrapping-box:after{
    position: absolute;
    content: "";
    bottom: 160px;
    right: -120px;
    width: 74px;
    height: 77px;
    background: url(../../../../img/usr/freepage/ochugen/mv_deco04.png) no-repeat;
    z-index: 1;
  }  


  .ochugen-sec.trivia .ochugen-txt-area{
    padding: 25px 50px 0;
    position: relative;
  }

  .ochugen-sec.trivia .ochugen-txt-area:after{
    position: absolute;
    content: "";
    bottom: 20px;
    right: 60px;
    width: 170px;
    height: 142px;
    background: url(../../../../img/usr/freepage/ochugen/midyear_gift.png);
    z-index: 1;    
  }

  .ochugen-sec.trivia .ochugen-txt-area p{
    border-bottom: solid 1px #D8D8D8;
    font-size: 16px;
    padding: 8px 0;
  }


}

/* ---------- fede ---------- */
.scroll-anime{opacity: 0;}

.fadeInDown {
	animation-name: fadeInDown;
	animation-duration: 1.5s;
	animation-fill-mode: forwards;
}

@keyframes fadeInDown {
	0% {opacity: 0;}
	100% {
	opacity: 1;
	transform: translate(0);
	}
}

.updown {transform: translateY(-50px);}
.downup {transform: translateY(50px);}

.slide-right {transform: translateX(50px);}
.slide-left {transform: translateX(-50px);}
