@charset "UTF-8";
/* ===================================================================
CSS information

file name  : cuisine.css
author     : Abilive
style info : 料理
=================================================================== */
/* ===================================================================
CSS information

file name  : _settings.scss
author     : Abilive
style info : 汎用設定
=================================================================== */
.lower #header {
  margin-bottom: 0;
}

#main {
  background: url("../images/home/bg_cui_repeat.jpg") #191919 repeat center top;
}

.wrp_bg_cui {
  position: relative;
}
@media only screen and (min-width: 1025px) {
  .wrp_bg_cui {
    padding: 10rem 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .wrp_bg_cui {
    padding: 7.14rem 0;
  }
}
@media only screen and (max-width: 767px) {
  .wrp_bg_cui {
    padding: 4.5em 0;
  }
}

.con_cui_read,
.con_cui_int,
.con_cui_loop,
.con_cui_chef {
  color: #fff;
  fill: #fff;
  --circle-bg: transparent;
  --circle-dot-color: white;
  --circle-line-color: white;
  --circle-border-color: white;
  --swiper-arrow-bgc: rgba(255, 255, 255, 0.2);
  --swiper-arrow-color: white;
  position: relative;
  z-index: 2;
}
.con_cui_read [class^="tmp_st"],
.con_cui_int [class^="tmp_st"],
.con_cui_loop [class^="tmp_st"],
.con_cui_chef [class^="tmp_st"] {
  color: inherit;
}
.con_cui_read .tmp_st_v:not(.c_grad) .grad,
.con_cui_int .tmp_st_v:not(.c_grad) .grad,
.con_cui_loop .tmp_st_v:not(.c_grad) .grad,
.con_cui_chef .tmp_st_v:not(.c_grad) .grad {
  color: inherit;
  -webkit-background-clip: inherit;
  -webkit-text-fill-color: inherit;
  background: none;
}
.con_cui_read .tmp_st_v.c_grad .grad,
.con_cui_int .tmp_st_v.c_grad .grad,
.con_cui_loop .tmp_st_v.c_grad .grad,
.con_cui_chef .tmp_st_v.c_grad .grad {
  background: var(--grad-title-white);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.con_cui_read .tmp_link a:has(.ic_external),
.con_cui_int .tmp_link a:has(.ic_external),
.con_cui_loop .tmp_link a:has(.ic_external),
.con_cui_chef .tmp_link a:has(.ic_external) {
  border-bottom: 1px solid white;
}
.con_cui_read .tmp_link .ic svg,
.con_cui_int .tmp_link .ic svg,
.con_cui_loop .tmp_link .ic svg,
.con_cui_chef .tmp_link .ic svg {
  fill: #707070 !important;
}

.con_cui_read {
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .con_cui_read {
    width: calc(348 / 428 * 100%);
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_read .txt {
    margin-top: 1.42rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_read .txt {
    margin-top: 1em;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_read .txt {
    text-align: center;
  }
}

.con_cui_int {
  display: flex;
}
@media only screen and (min-width: 1025px) {
  .con_cui_int {
    padding-top: 11.42rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_cui_int {
    padding-top: 10rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int {
    padding-top: 4em;
  }
}
@media only screen and (min-width: 1025px) {
  .con_cui_int {
    align-items: center;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int {
    flex-direction: column;
    margin-right: auto;
    margin-left: auto;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .con_cui_int {
    width: calc(348 / 428 * 100%);
  }
}

@media only screen and (max-width: 767px) and (max-width: 767px) {
  .con_cui_int .tmp_st .s28 {
    font-size: 1.6rem;
  }
}

.con_cui_int .box_txt {
  order: 2;
}
@media only screen and (min-width: 1025px) {
  .con_cui_int .box_txt {
    width: calc(369 / 1440 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_cui_int .box_txt {
    width: calc(469 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .box_txt {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_int .box_txt {
    margin-left: calc(70 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .box_txt {
    margin-top: 1.5em;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_int .box_txt .txt {
    margin-top: 1.42rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .box_txt .txt {
    margin-top: 1em;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_int .box_txt .txt {
    max-width: 22.92rem;
  }
}
.con_cui_int .sub_img {
  order: 3;
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
  .con_cui_int .sub_img {
    width: calc(261 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .sub_img {
    width: 100%;
  }
}
@media only screen and (min-width: 1025px) {
  .con_cui_int .sub_img {
    margin-top: calc(-440 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .sub_img {
    margin-top: 3em;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_cui_int .sub_img {
    position: absolute;
    right: 0;
    top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .sub_img {
    justify-content: center;
  }
}
.con_cui_int .sub_img .img2 {
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 768px) {
  .con_cui_int .sub_img .img2 {
    width: calc(170 / 261 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .sub_img .img2 {
    width: 45%;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_int .sub_img .img2 {
    margin-right: calc(-49 / 261 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .sub_img .img2 {
    margin-right: -5%;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_int .sub_img .img3 {
    margin-top: calc(160 / 261 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .sub_img .img3 {
    margin-top: 30%;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_int .sub_img .img3 {
    width: calc(140 / 261 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .sub_img .img3 {
    width: 35%;
  }
}
.con_cui_int .img {
  order: 1;
}
@media only screen and (min-width: 1025px) {
  .con_cui_int .img {
    width: calc(740 / 1440 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_cui_int .img {
    width: calc(720 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .img {
    width: 100%;
  }
}
.con_cui_int .img img {
  display: block;
  margin-right: 0;
  margin-left: auto;
}
@media only screen and (min-width: 768px) {
  .con_cui_int .img img {
    width: calc(650 / 740 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_int .img img {
    width: 100%;
  }
}

@keyframes loop1 {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
@media only screen and (min-width: 1025px) {
  .con_cui_loop {
    padding-top: 10.71rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_cui_loop {
    padding-top: 8.57rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_loop {
    padding-top: 5em;
  }
}
.con_cui_loop .box_loop {
  display: flex;
  width: 100%;
  overflow: hidden;
}
.con_cui_loop .loop_inner {
  display: flex;
  overflow: hidden;
  flex-shrink: 0;
}
@media only screen and (min-width: 768px) {
  .con_cui_loop .loop_inner {
    width: calc(2240 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_loop .loop_inner {
    width: 250%;
  }
}
.con_cui_loop .loop_inner:first-child {
  animation: loop1 60s -30s linear infinite;
}
.con_cui_loop .loop_inner:last-child {
  animation: loop2 60s linear infinite;
}
.con_cui_loop .loop_inner > figure {
  display: block;
}
@media only screen and (min-width: 768px) {
  .con_cui_loop .loop_inner > figure {
    width: calc(280 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_loop .loop_inner > figure {
    width: calc(280 / 640 * 100%);
  }
}

.con_cui_chef {
  display: flex;
}
@media only screen and (min-width: 1025px) {
  .con_cui_chef {
    padding-top: 14.28rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_cui_chef {
    padding-top: 10rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_chef {
    padding-top: 5em;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_chef {
    justify-content: flex-end;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_chef {
    margin-right: auto;
    margin-left: auto;
    flex-direction: column;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .con_cui_chef {
    width: calc(348 / 428 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_chef .js-move-sp {
    order: -1;
    text-align: center;
    width: 100%;
  }
}
.con_cui_chef .chef_st {
  display: flex;
  flex-direction: column;
}
.con_cui_chef .chef_st .jp {
  order: -1;
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .con_cui_chef .chef_st .jp {
    font-size: 1.6rem;
  }
}

@media only screen and (min-width: 768px) {
  .con_cui_chef .box_txt {
    width: calc(720 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_chef .box_txt {
    width: 100%;
  }
}
@media only screen and (min-width: 1025px) {
  .con_cui_chef .box_txt {
    margin-top: calc(50 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_chef .box_txt {
    margin-top: 1.5em;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1365px) {
  .con_cui_chef .box_txt {
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_chef .box_txt {
    order: 3;
  }
}
.con_cui_chef .box_txt > * {
  margin-right: 0;
  margin-left: auto;
}
@media only screen and (min-width: 1025px) {
  .con_cui_chef .box_txt > * {
    max-width: 32.14rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_cui_chef .box_txt > * {
    max-width: 28.57rem;
  }
}
@media only screen and (min-width: 1441px) {
  .con_cui_chef .box_txt > * {
    max-width: calc(450px * 18 / 14);
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1365px) {
  .con_cui_chef .box_txt > * {
    margin-top: 0;
    width: 30rem;
  }
}
.con_cui_chef .box_txt .txt {
  line-height: 2;
}
@media only screen and (min-width: 768px) {
  .con_cui_chef .box_txt .txt {
    margin-top: 1.42rem;
  }
}
.con_cui_chef .box_txt .txt > span {
  display: block;
}
@media only screen and (min-width: 768px) {
  .con_cui_chef .box_txt .txt > span {
    width: 95%;
    max-width: 25.71rem;
  }
}
@media only screen and (min-width: 768px) and (min-width: 1441px) {
  .con_cui_chef .box_txt .txt > span {
    max-width: calc(360px * 18 / 14);
  }
}

@media only screen and (min-width: 768px) {
  .con_cui_chef .box_txt .txt > span + span {
    margin-top: 1.42rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_chef .box_txt .txt > span + span {
    margin-top: 1em;
  }
}
.con_cui_chef .box_txt .txt .n_txt {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
}
.con_cui_chef .box_txt .txt .n_txt .t {
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .con_cui_chef .box_txt .txt .n_txt .t {
    width: 8rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_chef .box_txt .txt .n_txt .t {
    width: 8.5em;
  }
}
.con_cui_chef .box_txt .txt .n_txt .sign {
  width: 131px;
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .con_cui_chef .box_txt .txt .n_txt .sign {
    margin-right: -0.3em;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_chef .box_txt .txt .n_txt .sign {
    margin-right: -0.3em;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_chef .img {
    width: calc(720 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_chef .img {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_chef .img {
    margin-top: 1.5em;
    order: 2;
  }
}

@media only screen and (min-width: 768px) {
  :root {
    --repo-grad-h: 12em;
  }
}
@media only screen and (max-width: 767px) {
  :root {
    --repo-grad-h: 10em;
  }
}

.wrp_cui_ricca {
  position: relative;
  transition-property: color;
  transition-duration: .3s;
  transition-timing-function: ease-out;
}
@media only screen and (min-width: 768px) {
  .wrp_cui_ricca {
    padding-top: calc(var(--repo-grad-h) + 7em);
  }
}
@media only screen and (max-width: 767px) {
  .wrp_cui_ricca {
    padding-top: calc(var(--repo-grad-h) + 5em);
  }
}
.wrp_cui_ricca .bg_repo {
  width: 100%;
  height: 100%;
  background-color: #fff;
  transition-property: opacity;
  transition-duration: .3s;
  transition-timing-function: ease-out;
  position: absolute;
  left: 0;
  top: var(--repo-grad-h);
  right: 0;
  bottom: 0;
  opacity: 0;
  z-index: 0;
}
.wrp_cui_ricca .bg_repo::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 100%;
  right: 0;
  height: var(--repo-grad-h);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 15%, white 100%);
}
.wrp_cui_ricca.is-bg-change .bg_repo {
  opacity: 1;
}

.con_cui_ricca {
  margin-right: auto;
  margin-left: auto;
  display: flex;
  align-items: flex-start;
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 1025px) {
  .con_cui_ricca {
    width: calc(1260 / 1440 * 100%);
    max-width: calc(1260px);
  }
}
@media only screen and (min-width: 1441px) {
  .con_cui_ricca {
    max-width: calc(1260px * ((18 + 0) / 14));
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_cui_ricca {
    width: calc(1360 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca {
    width: calc(388 / 428 * 100%);
  }
}
@media only screen and (min-width: 1025px) {
  .con_cui_ricca {
    align-items: center;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca {
    margin-right: auto;
    margin-left: auto;
    flex-wrap: wrap;
    align-items: flex-end;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .con_cui_ricca {
    width: calc(348 / 428 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .js-move-sp {
    order: -1;
    text-align: center;
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .img {
    width: calc(400 / 1260 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .img {
    width: 60%;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .img {
    order: 2;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .img {
    order: 3;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .img {
    margin-top: 2em;
  }
}
.con_cui_ricca .ricca_st {
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .ricca_st .logo {
    width: 136px;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .ricca_st .logo {
    width: 10em;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .ricca_st .logo {
    margin-right: auto;
    margin-left: auto;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .ricca_st .jp {
    margin-top: 1.42rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .ricca_st .jp {
    margin-top: 0.5em;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .box_txt {
    width: calc(470 / 1260 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_txt {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .box_txt {
    margin-left: calc(90 / 1260 * 100%);
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .box_txt {
    order: 3;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_txt {
    order: 4;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_txt {
    margin-top: 4em;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .box_txt .txt {
    margin-top: 1.42rem;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .box_txt .txt {
    max-width: 20.35rem;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .box_txt .tmp_link {
    margin-top: 1.42rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_txt .tmp_link {
    margin-top: 2em;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_txt .tmp_link {
    justify-content: center;
  }
}
.con_cui_ricca .box_sub {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .box_sub {
    width: calc(350 / 1260 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_sub {
    width: 50%;
  }
}
@media only screen and (min-width: 1025px) {
  .con_cui_ricca .box_sub {
    margin-top: calc(120 / 1260 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_cui_ricca .box_sub {
    margin-top: calc(300 / 1260 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_sub {
    margin-top: -10%;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .box_sub {
    margin-right: calc(-50 / 1260 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_sub {
    margin-right: -6%;
  }
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .box_sub {
    order: 1;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_sub {
    order: 2;
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_sub {
    margin-left: -5%;
  }
}
.con_cui_ricca .box_sub .img2 {
  width: calc(163 / 350 * 100%);
}
@media only screen and (min-width: 768px) {
  .con_cui_ricca .box_sub .img2 {
    margin-bottom: calc(-160 / 350 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_sub .img2 {
    margin-bottom: -18%;
  }
}
.con_cui_ricca .box_sub .img3 {
  width: calc(209 / 350 * 100%);
  margin-right: calc(-47 / 350 * 100%);
  order: -1;
}
@media only screen and (max-width: 767px) {
  .con_cui_ricca .box_sub .img3 {
    margin-bottom: 28%;
  }
}
