@font-face {
  src: url(../font/Inter-V.ttf) format(truetype);
  font-family: Inter-V;
}
:root {
  --font-ShipporiMincho: "Shippori Mincho", serif;
  --fonto-Zen-Kaku-Gothic: "Zen Kaku Gothic New", serif;
  --font-Inter-V: "Inter-V", serif;
  --color-outer: #f7f7d8;
  --color-outer-sub: #4cad92;
  --color-tops: #f8ebf2;
  --color-tops-sub: #f85f67;
}
*, *::before, *::after {
  box-sizing: border-box;
}
body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
  margin: 0;
  color: #000;
}
ul[role=list], ol[role=list] {
  list-style: none;
}
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}
img, picture {
  max-width: 100%;
  height: auto;
  display: block;
}
input, button, textarea, select {
  font: inherit;
}
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
body, a, p {
  font-style: normal;
  text-decoration: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
}
body {
  position: relative;
  overflow-anchor: none;
}
ul {
  margin: 0;
  padding: 0;
}
li {
  list-style: none;
}
.image{
  width: 100%;
}
/*animation*/
.fade{
  opacity: 0;
}
.fade.active{
  animation-name: fade;
  animation-duration: 0.6s;
  animation-timing-function: ease-in-out;
  animation-delay: 0.2s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
}
@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.clippath-top{
  opacity: 0;
}
.clippath-top.active{
  animation-name: clippath-top;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-delay: 0.4s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
}
@keyframes clippath-top {
  0% {
    opacity: 1;
    clip-path: inset(0 0 100% 0);
  }
  100% {
    opacity: 1;
    clip-path: inset(0);
  }
}
.slide-up{
  opacity: 0;
}
.slide-up.active{
  animation-name: slide-up;
  animation-duration: 0.4s;
  animation-timing-function: ease-in-out;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
}
@keyframes slide-up {
  0% {
    opacity: 1;
    translate: 0 20%;
  }
  100% {
    opacity: 1;
    translate: 0 0;
  }
}
.clippath-left{
  opacity: 0;
}
.clippath-left.active{
  animation-name: clippath-left;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes clippath-left {
  0% {
    opacity: 1;
    clip-path: inset(0 100% 0 0);
  }
  100% {
    opacity: 1;
    clip-path: inset(0);
  }
}
.clippath-right{
  opacity: 0;
}
.clippath-right.active{
  animation-name: clippath-right;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes clippath-right {
  0% {
    opacity: 1;
    clip-path: inset(0 0 0 100%);
  }
  100% {
    opacity: 1;
    clip-path: inset(0);
  }
}
.slide-right{
  opacity: 0;
}
.slide-right.active{
  animation-name: slide-right;
  animation-duration: 0.6s;
  animation-timing-function: ease-in-out;
  animation-delay: 0.2s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
}
@keyframes slide-right {
  0% {
    opacity: 0;
    transform: translateX(10%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.slide-left{
  opacity: 0;
}
.slide-left.active{
  animation-name: slide-left;
  animation-duration: 1.2s;
  animation-timing-function: ease-in-out;
  animation-delay: 0.2s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
}
@keyframes slide-left {
  0% {
    opacity: 0;
    transform: translateX(-30%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.zoomin{
  opacity: 1;
  scale: 1.1;
}
.zoomin.active{
  animation-name: zoomin;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-delay: 0.2s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
}
@keyframes zoomin {
  0% {
    opacity: 1;
    scale: 1.1;
  }
  100% {
    opacity: 1;
    scale: 1;
  }
}
/*link-box*/
.link-box{
  position: relative;
  width: calc(316 / 1280 * 100vw);
  z-index: 3;
}
.link-box .main{
  padding-bottom: 1em;
  border-bottom: 1px solid #000;
}
.link-box .other{
  padding-top: 1.2em;
}
.cart-btm{
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: 0.3s ease-in-out;
  margin-bottom: 0.3em;
  color: #fff;
}
.cart-title{
  position: relative;
  font-family: var(--font-ShipporiMincho);
  font-size: calc(15.8105 / 1280 * 100vw);
  line-height: 1.4;
  letter-spacing: 0.02rem;
  font-weight: 400;
  font-style: normal;
  white-space: nowrap;
}
.cart-yen{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin: 0 0 0 auto;
  font-family: var(--font-ShipporiMincho);
  font-size: calc(15.8105 / 1280 * 100vw);
  line-height: 1.4;
  letter-spacing: 0.06rem;
  font-weight: 400;
  font-style: normal;
  white-space: nowrap;
}
.cart-yen img{
  width: 1em;
  margin: 0 0.5em 0 0;
}
.cart-yen .size-space{
  margin-right: 1.06em;
}
.cart-yen span{
  margin: 0 0 -2px 2%;
  font-size: calc(9.0346 / 1280 * 100vw);
}
.cart-btm .btn{
  margin: 0 0 0 1%;
  padding: 0.4em 0.8em;
  border: 1px solid;
  font-family: var(--font-Inter-V);
  font-size: calc(10.6904 / 1280 * 100vw);
  line-height: 1em;
}
.outer .main .cart-btm .btn{
  color: #fff;
  background: var(--color-outer-sub);
  border-color: var(--color-outer-sub);
}
.tops .main .cart-btm .btn{
  color: #fff;
  background: var(--color-tops-sub);
  border-color: var(--color-tops-sub);
}
.btn-arrow{
  position: relative;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out;
}
.btn-arrow span {
  display: inline-block;
  position: relative;
  letter-spacing: 0.02rem;
  -webkit-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
  will-change: transform;
}
.btn-arrow img{
  position: absolute;
  width: 1.1em;
  right: 0px;
  right: 0rem;
  opacity: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
  will-change: right, opacity;
}
.cart-btm:hover .btn-arrow span {
  -webkit-transform: translate3d(-0.5em, 0, 0);
  transform: translate3d(-0.5em, 0, 0);
}
.btn-arrow img{
  position: absolute;
  width: 0.9em;
  right: 0px;
  right: 0rem;
  opacity: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
  -webkit-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
  will-change: right, opacity;
}
.btn-arrow img *{
  stroke-width: 5;
  -webkit-text-stroke-color: transparent;
}
.cart-btm:hover .btn-arrow img {
  opacity: 1;
  right: -1em;
}
/* 共通*/
.image{
  width: 100%;
}
.pc {
  display: block;
}
.sp {
  display: none;
}
.slide-box {
  overflow: hidden;
}
.flex-box{
  display: flex;
}
.flex-reverse{
  flex-direction: row-reverse;
}
/*header*/
.header {
  position: relative;
  aspect-ratio: 1280 / 720;
  width: 100%;
  overflow: hidden;
}
.header .photo01{
  position: absolute;
  top: 9%;
  left: 0;
  width: calc(354 / 1280 * 100%);
}
.header .photo02{
  position: absolute;
  bottom: 0;
  right: 0;
  width: calc(392 / 1280 * 100%);
}
.header .photo02 .image{
  animation-duration: 0.7s;
}
.header .photo03{
  position: absolute;
  top: 0;
  left: 45.5%;
  width: calc(385 / 1280 * 100%);
}
.header .title01{
  position: absolute;
  top: 20%;
  left: 21.5%;
  width: calc(333.2416 / 1280 * 100%);
}
.header .title01 .image{
  animation-delay: 0.6s;
}
.header .title02{
  position: absolute;
  top: 37%;
  left: 22.25%;
  width: calc(539.4637 / 1280 * 100%);
  animation-duration: 0.6s;
  animation-delay: 0.8s;
}
.header .title03{
  position: absolute;
  top: 58%;
  left: 21%;
  width: calc(656.6719 / 1280 * 100%);
}
.header .title03 .image{
  animation-delay: 1.4s;
}
.header .title04{
  position: absolute;
  top: 82%;
  left: 24%;
  width: calc(328.1989 / 1280 * 100%);
}
.header .title04 .image{
  animation-delay: 1.4s;
}
.header-logo {
  position: absolute;
  top: 2%;
  left: 1%;
  width: calc(50 / 1280 * 100%);
}
/* lead------------------------ */
.lead{
  margin-top: 4%;
}
.lead .text{
  text-align: center;
  font-family: var(--font-ShipporiMincho);
  font-size: calc(20 / 1280 * 100vw);
  line-height: calc(22.3242 / 12);
}
.lead .text .color{
  position: relative;
  display: inline-block;
  margin: 0 0.5em;
  padding: 0 0.5em;
  color: var(--color-tops-sub);
  font-size: calc(28.5 / 1280 * 100vw);
}
.lead .text .color::before{
  content: url(../img/lead-icon.svg);
  display: block;
  width: calc(10.9404 / 1280 * 100vw);
  position: absolute;
  left: 0;
  top: -0.3em;
}
.lead .text .color::after{
  content: url(../img/lead-icon.svg);
  display: block;
  width: calc(10.9404 / 1280 * 100vw);
  position: absolute;
  right: 0;
  bottom: -0.3em;
  rotate: 180deg;
}
/* mainnav------------------------------ */
.mainnav{
  margin-top: 5%;
}
.mainnav .list{
  display: flex;
  justify-content: center;
  gap: 3%;
}
.mainnav .list .item{
  width: calc(308 / 1280 * 100%);
  transition: 0.6s ease;
}
.mainnav .list .item:hover{
  opacity: 0.8;
}
/* 共通------------------ */
.main-wrapper{
  margin-top: 7%;
}
.style-box{
  margin-top: 10%;
}
.style-box{
  position: relative;
  overflow: hidden;
}
.style-box .bg{
  position: absolute;
  left: 0;
  display: block;
  width: 100%;
  z-index: -1;
  animation-duration: 1.6s;
}
.outer .bg{
  background: var(--color-outer);
}
.tops .bg{
  background: var(--color-tops);
}
.style-box .box01{
  display: flex;
}
.style-box .box01 .text-box{
  width: calc(525 / 1280 * 100%);
}
.style-box .box01 .text-box .number{
  width: 100%;
}
.style-box .box01 .text-box .itemname{
  width: 100%;
  margin-top: 8%;
}
.style-box .box01 .text-box .itemname-ja{
  margin-top: 3%;
  margin-left: 0.5em;
  text-align: center;
  font-family: var(--fonto-Zen-Kaku-Gothic);
  font-size: calc(18 / 1280 * 100vw);
}
.style-box .box01 .text-box .item-photo{
  position: relative;
  right: 1%;
  margin-top: 3%;
}
.style-box .box01 .text-box .item-photo .icon{
  position: absolute;
  animation-duration: 0.6s;
  animation-delay: 0.2s;
}
.style-box .box01 .text-box .text{
  width: calc(440 / 525 * 100%);
  margin: -6% auto 0;
  font-family: var(--font-ShipporiMincho);
  font-size: calc(15 / 1280 * 100vw);
  line-height: calc(31.6058 / 15);
}
/* outer01------------------ */
.outer01{
  padding-top: 0.5%;
}
.outer01 .bg{
  top: 23.5%;
  height: 50.5%;
}
.outer01 .box01{
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 1%;
}
.outer01 .box01 .text-box .item-photo .icon{
  top: 3%;
  right: 13%;
  width: calc(114.5601 / 550 * 100%);
}
.outer01 .photo01{
  width: calc(640 / 1280 * 100%);
  margin-top: 5%;
}
.outer01 .box02{
  flex-direction: row-reverse;
  justify-content: center;
  gap: 2%;
  margin-top: 3%;
}
.outer01 .box02 .photo02{
  width: calc(440 / 1280 * 100%);
}
.outer01 .box02 .photo03{
  position: relative;
  width: calc(540 / 1280 * 100%);
  margin-top: 19%;
}
.outer01 .box02 .photo03 .title{
  position: absolute;
  top: 18%;
  left: 8%;
  width: calc(68.3586 / 540 * 100%);
}
.outer01 .link-box{
  margin: -15% auto 0 55.5%;
}
/* outer02------------------ */
.outer02 .bg{
  top: 26%;
  height: 59.5%;
}
.outer02 .box01{
  position: relative;
  left: 8%;
  gap: 1%;
}
.outer02 .box01 .text-box .item-photo{
  margin-top: -3%;
}
.outer02 .box01 .text-box .item-photo .icon{
  top: 7%;
  right: 7%;
  width: calc(125.9321 / 550 * 100%);
}
.outer02 .photo01{
  position: relative;
  width: calc(580 / 1280 * 100%);
  margin-top: 6%;
}
.outer02 .photo01 .title{
  position: absolute;
  top: 8.5%;
  right: 10%;
  width: calc(68.3586 / 580 * 100%);
  z-index: 2;
}
.outer02 .box02{
  flex-direction: row-reverse;
  justify-content: center;
  gap: 2%;
  margin-top: 3%;
}
.outer02 .photo02{
  width: calc(480 / 1280 * 100%);
  margin: 4% auto 0 22%;
}
.outer02 .link-box{
  margin: -15% auto 0 62%;
}
/* outer03------------------ */
.outer03 .bg{
  top: 29%;
  height: 54.5%;
}
.outer03 .box01{
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 1%;
}
.outer03 .box01 .text-box .item-photo .icon{
  top: 18%;
  right: 11%;
  width: calc(66.165 / 550 * 100%);
}
.outer03 .photo01{
  width: calc(640 / 1280 * 100%);
  margin-top: 6%;
}
.outer03 .box02{
  flex-direction: row-reverse;
  justify-content: center;
  gap: 2%;
  margin-top: 3%;
}
.outer03 .photo02{
  position: relative;
  width: calc(480 / 1280 * 100%);
  margin: -3% auto 0 41%;
}
.outer03 .photo02 .title{
  position: absolute;
  top: 9%;
  left: 9.5%;
  width: calc(68.3586 / 580 * 100%);
  z-index: 2;
}
.outer03 .link-box{
  margin: -10% auto 0 13%;
}
/* tops01------------------ */
.tops01{
  padding-top: 1%;
}
.tops01 .bg{
  top: 26%;
  height: 52.5%;
}
.tops01 .box01{
  position: relative;
  left: 8%;
  gap: 1%;
}
.tops01 .box01 .text-box .item-photo .icon{
  top: 4%;
  right: 14%;
  width: calc(104.9364 / 550 * 100%);
}
.tops01 .photo01{
  position: relative;
  width: calc(600 / 1280 * 100%);
  margin-top: 6%;
}
.tops01 .photo01 .title{
  position: absolute;
  top: 7%;
  right: 10%;
  width: calc(66.3404 / 580 * 100%);
  z-index: 2;
}
.tops01 .box02{
  position: relative;
  right: 2%;
  display: flex;
  justify-content: center;
  gap: 3%;
  margin-top: 4%;
}
.tops01 .photo02{
  width: calc(440 / 1280 * 100%);
}
.tops01 .photo03{
  width: calc(550 / 1280 * 100%);
  margin-top: 16%;
}
.tops01 .link-box{
  margin: -16% auto 0 17%;
}
/* tops02------------------ */
.tops02 .bg{
  top: 29%;
  height: 56%;
}
.tops02 .box01{
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 1%;
}
.tops02 .box01 .text-box .item-photo .icon{
  top: 9%;
  right: 8%;
  width: calc(143.4695 / 550 * 100%);
}
.tops02 .photo01{
  width: calc(640 / 1280 * 100%);
  margin-top: 6%;
}
.tops02 .box02{
  flex-direction: row-reverse;
  justify-content: center;
  gap: 2%;
  margin-top: 3%;
}
.tops02 .photo02{
  position: relative;
  width: calc(540 / 1280 * 100%);
  margin: -3% auto 0 42.5%;
}
.tops02 .photo02 .title{
  position: absolute;
  top: 8%;
  right: 8.5%;
  width: calc(68.3586 / 580 * 100%);
  z-index: 2;
}
.tops02 .link-box{
  margin: -18% auto 0 15%;
}
/* tops03------------------ */
.tops03 .bg{
  top: 27%;
  height: 52.5%;
}
.tops03 .box01{
  position: relative;
  left: 3%;
  justify-content: center;
  gap: 1%;
}
.tops03 .box01 .text-box .item-photo .icon{
  top: 24%;
  right: 12%;
  width: calc(97.2935 / 550 * 100%);
}
.tops03 .box01 .text-box .item-photo{
  right: 4%;
  margin-top: 2%;
}
.tops03 .photo01{
  position: relative;
  width: calc(600 / 1280 * 100%);
  margin-top: 5%;
}
.tops03 .photo01 .title{
  position: absolute;
  top: 4%;
  right: 9%;
  width: calc(68.3583 / 540 * 100%);
}
.tops03 .box02{
  position: relative;
  right: 3%;
  justify-content: center;
  gap: 3%;
  margin-top: 3%;
}
.tops03 .box02 .photo02{
  width: calc(440 / 1280 * 100%);
}
.tops03 .box02 .photo03{
  position: relative;
  width: calc(530 / 1280 * 100%);
  margin-top: 12%;
}
.tops03 .link-box{
  margin: -15% auto 0 17%;
}
/* end-blocK-------------------- */
.end-box{
  position: relative;
  margin-top: 12%;
}
.end-box .bg{
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 88%;
  background: var(--color-outer);
  z-index: -1;
}
/* pickup----------------------- */
.pickup .title{
  width: calc(221.3344 / 1280 * 100%);
  margin-inline: auto;
}
.pickup .list{
  display: flex;
  justify-content: center;
  gap: 3%;
  margin-top: 3%;
}
.pickup .banner{
  width: calc(350 / 1280 * 100%);
}
.pickup .banner .image{
  animation-duration: 0.8s;
}
/* all-item-------------------------- */
.all-item {
  width: calc(600 / 1280 * 100%);
  margin: 6% auto 0;
}
.all-item .btn-link{
  display: block;
  width: 100%;
  padding: 4% 0;
  border-radius: 40px;
  background: var(--color-tops-sub);
}
.all-item  .btn-link .btn-text{
  width: calc(442.6211 / 600 * 100%);
  margin-inline: auto;
  margin-left: 20%;
}
/*banner-staff--------------------------*/
.banner-staff {
  width: calc(325.9229 / 1280 * 100%);
  margin: 6% auto 0;
}
/*banner--------------------------*/
.banner-block{
  width: 100%;
  margin: 4% auto 0;
  position: relative;
  z-index: 1;
}
.c-btn01{
 width: calc(603 / 1280 * 100%);
  margin: 0 auto 2% auto;
  border: 1px solid #666;
  display: block;
  transition: 0.6s ease-in-out;
}
.c-btn01:hover{
  border-color: #000;
}
/*footer*/
.footer {
  padding-bottom: 2%;
  text-align: center;
}
.footer-sns {
  display: block;
  width: calc(30 / 1280 * 100%);
  min-width: 30px;
  margin: 4% auto 0;
}
.footer-logo {
  display: block;
  width: calc(102 / 1280 * 100%);
  margin: 3% auto 0;
}
.footer-logo .image{
  width: 100%;
}
.footer-copyright {
  font-family: "Helvetica", serif;
  font-size: calc(8 / 1280 * 100vw);
  letter-spacing: 0.02em;
  margin: 34px 0 0;
}
/*pagetop*/
.pagetop {
  position: fixed;
  right: 1vw;
  bottom: 30px;
  width: calc(102.5313 / 1280 * 100%);
  z-index: 99;
}
.pagetop .image{
  width: 100%;
}
/*footnav*/
.sidenav {
  position: fixed;
  top: 50%;
  right: -0.8%;
  translate: 0 -50%;
  width: calc(100 / 1280 * 100%);
  z-index: 10;
}
.sidenav .image{
  transition: 0.6s ease;
}
.sidenav .item:nth-child(2){
  margin-top: -10%;
}
.sidenav .image:hover{
  opacity: 0.8;
}
@media (max-width: 768px) {
  /* link-box------------------------ */
  .link-box{
    width: calc(315.4597 / 375 * 100%);
  }
  .cart-title,
  .cart-yen,
  .accordion .accordion-btn{
    font-size: calc(15.8105  / 375 * 100vw);
  }
  .cart-yen span{
    font-size: calc(9.0346  / 375 * 100vw);
  }
  .cart-btm .btn{
    font-size: calc(10.6904 / 375 * 100vw);
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  /* header------------------------ */
  .header{
    aspect-ratio: 375 / 667;
    background: #f3f4d3;
  }
  .header .photo01{
    top: 0;
    width: calc(244 / 375 * 100%);
  }
  .header .photo02{
    width: calc(175 / 375 * 100%);
  }
  .header .photo03{
    top: 3.5%;
    left: auto;
    right: 0;
    width: calc(150 / 375 * 100%);
  }
  .header .mask{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
  .header .title01{
    top: 40%;
    left: 44.5%;
    width: calc(203.1571 / 375 * 100%);
  }
  .header .title02{
    left: 50%;
    translate: -50% 0;
    top: 50%;
    width: calc(325.7297 / 375 * 100%);
  }
  .header .title03{
    top: 63.5%;
    left: 3%;
    width: calc(296.1577 / 375 * 100%);
  }
  .header .title04{
    top: 88%;
    left: 10%;
    width: calc(210.0012 / 375 * 100%);
  }
  .header-logo {
    display: none;
  }
  /* lead---------------------------- */
  .lead{
    padding-top: 10%;
  }
  .lead-logo {
    display: block;
    width: calc(66 / 375 * 100%);
    margin: 0 auto;
  }
  .lead .text {
    margin-top: 10%;
    font-size: calc(15 / 375 * 100vw);
    line-height: calc(32 / 15);
    letter-spacing: 0.01em;
  }
  .lead .text .color{
    font-size: calc(25.5 / 375 * 100vw);
  }
  .lead .text .color::before,
  .lead .text .color::after{
    width: calc(9.9085 / 375 * 100%);
  }
  /* mainnav---------------------------------- */
  .mainnav{
    padding-top: 12%;
    margin-bottom: 10%;
  }
  .mainnav .list{
    gap: 5%;
  }
  .mainnav .list .item{
    width: calc(140 / 375 * 100%);
  }
  /* main-wrapper---------------------- */
  .main-wrapper{
   padding-top: 2%;
   overflow: hidden;
  }
  /* 共通------------------ */
  .main-wrapper,
  .style-box{
    margin-top: 22%;
  }
  .style-box .box01{
    left: auto;
    flex-direction: column;
  }
  .style-box .box01 .text-box{
    display: contents;
    width: 100%;
  }
  .style-box .box01 .text-box .number{
    scale: 1.3;
    margin-left: -2%;
    padding-top: 3%;
    order: 1;
  }
  .style-box .box01 .text-box .itemname{
    margin-top: 12%;
    order: 1;
  }
  .style-box .box01 .text-box .itemname-ja{
    margin-top: 5%;
    font-size: calc(16 / 375 * 100vw);
    order: 3;
  }
  .style-box .box01 .text-box .item-photo{
    right: auto;
    margin-top: 6%;
    order: 4;
  }
  .style-box .box01 .text-box .text{
    width: calc(440 / 525 * 100%);
    margin: -6% auto 0;
    font-size: calc(15 / 375 * 100vw);
    line-height: calc(32 / 15);
    order: 4;
  }
  .style-box .box01 .photo01{
    width: 100%;
    margin-top: 8%;
    order: 3;
  }
  .style-box .box02{
    right: auto;
    flex-direction: column;
    margin-top: 6%;
  }
  div[class*="outer"] .link-box,
  div[class*="tops"] .link-box{
    margin: 8% auto 0;
  }
  /* order01------------------- */
  .outer01{
    margin-top: 0;
    padding-top: 0;
  }
  .outer01 .bg{
    top: 30.5%;
    height: 30.5%;
  }
  .outer01 .box01 .text-box .item-photo .icon{
    right: 10%;
    width: calc(81.8618 / 375 * 100%);
  }
  .outer01 .box02 .photo02{
    width: calc(300 / 375 * 100%);
    margin: 0 0 0 auto;
  }
  .outer01 .box02 .photo03{
    width: calc(350 / 375 * 100%);
    margin-top: 8%;
  }
  .outer01 .box02 .photo03 .title{
    left: 7%;
    width: calc(58.1051 / 350 * 100%);
  }
  /* order02------------------- */
  .outer02 .bg{
    top: 37.5%;
    height: 36.5%;
  }
  .outer02 .photo01 .title{
    top: 6%;
    right: 6%;
    width: calc(58.1051 / 375 * 100%);
  }
  .outer02 .box01 .text-box .item-photo .icon{
    top: 5%;
    right: 5%;
    width: calc(89.9492 / 375 * 100%);
  }
  .outer02 .photo02{
    width: calc(350 / 375 * 100%);
    margin: 6% 0 0 auto;
  }
  /* order03------------------- */
  .outer03 .bg{
    top: 39%;
    height: 36.5%;
  }
  .outer03 .box01 .text-box .item-photo .icon{
    width: calc(47.2599 / 375 * 100%);
  }
  .outer03 .photo02{
    width: calc(350 / 375 * 100%);
    margin: 6% auto 0 0;
  }
  .outer03 .photo02 .title{
    left: 5.5%;
    width: calc(57.3056 / 350 * 100%);
  }
  /* tops01------------------------- */
  .tops01 .bg{
    top: 31.5%;
    height: 29.5%;
  }
  .tops01 .photo01 .title{
    top: 8%;
    right: 7%;
    width: calc(56.3896 / 375 * 100%);
  }
  .tops01 .box01 .text-box .item-photo .icon{
    width: calc(74.9536 / 375 * 100%);
  }
  .tops01 .box01 .text-box .text{
    margin-top: -2%;
  }
  .tops01 .photo02{
    width: calc(337 / 375 * 100%);
  }
  .tops01 .photo03{
    width: calc(300 / 375 * 100%);
    margin: 10% auto 0;
  }
  /* top02---------------------- */
  .tops02 .bg{
    top: 37%;
    height: 36%;
  }
  .tops02 .box01 .text-box .item-photo .icon{
    right: 6%;
    width: calc(102.4942 / 375 * 100%);
  }
  .tops02 .photo02{
    width: calc(350 / 375 * 100%);
    margin: 8% 0 0 auto;
  }
  .tops02 .photo02 .title{
    top: 6%;
    right: 6%;
    width: calc(56.3897 / 350 * 100%);
  }
  /* top03---------------------- */
  .tops03 .bg{
    top: 31.35%;
    height: 30.5%;
  }
  .tops03 .photo01 .title{
    top: 7%;
    right: 7%;
    width: calc(56.1044 / 375 * 100%);
  }
  .tops03 .box01 .text-box .item-photo .icon{
    right: 10%;
    width: calc(69.4957 / 375 * 100%);
  }
  .tops03 .box02 .photo02{
    width: calc(300 / 375 * 100%);
  }
  .tops03 .box02 .photo03{
    width: calc(350 / 375 * 100%);
    margin: 10% 0 0 auto;
  }
  /* end-box--------------------- */
  .end-box{ 
    margin-top: 22%;
  }
  /* pickup----------------------- */
  .pickup .title{
    width: calc(221.3344 / 375 * 100%);
  }
  .pickup .list{
    flex-direction: column;
    align-items: center;
    margin-top: 0;
  }
  .pickup .banner{
    width: calc(294 / 375 * 100%);
    margin-top: 6%;
  }
  /* all-item------------------------- */
  .all-item{
    margin-top: 16%;
    width: calc(334 / 375 * 100%);
  }
  .all-item .btn-link{
    padding: 8% 0;
    border-radius: 40px;
  }
  .all-item .btn-link .btn-text{
    width: calc(286.4399 / 335 * 100%);
    margin-left: 9%;
  }
  /* banner-staff------------------ */
  .banner-staff {
    width: calc(249.8076 / 375 * 100%);
    margin-top: 14%;
  }
  .banner-block{
    width: calc(294 / 375 * 100%);
    margin-top: 14%;
  }
  .c-btn01{
    width: 100%;
    margin-bottom: 5%;
  }
  .footer {
    padding-bottom: 18%;
  }
  .footer-sns {
    width: calc(35.1563 / 375 * 100%);
    margin-top: 10%;
  }
  .footer-logo {
    width: calc(119.5312 / 375 * 100%);
    margin-top: 6%;
  }
  .footer-copyright{
    font-size: calc(8.2032 / 375 * 100vw);
  }
  /* sidenav-------------------- */
  .sidenav{
    top: auto;
    bottom: 0;
    right: auto;
    left: 0;
    translate: 0 0;
    width: 100%;
    z-index: 999;
  }
  .sidenav .list{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
    margin: 0 auto;
  }
  .sidenav .item:nth-child(1),
  .sidenav .item:nth-child(2){
    width: calc(165 / 375 * 100%);
  }
  .sidenav .item:nth-child(3){
    width: calc(45 / 375 * 100%);
  }
  .sidenav .item:nth-child(2){
    margin-top: 0;
  }
  .sidenav .item .image{
    width: 100%;
  }
  .sidenav .item .image:hover{
    opacity: 1;
  }
}