@charset "UTF-8";
/* ---------------------------------------------------
resset
---------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;vertical-align: bottom;}
body, html {padding:0;margin:0}h1,h2,h3,h4,p,figure,picture,blockquote,ul,li,dl,dd{margin:0;}
ul,ol{list-style:none}
h1,h2,h3,h4{/*text-wrap:balance;*/text-align:left;}
i,s{font-style:normal;}
a:not([class]){color:currentColor}
img,figure,picture{display:block;max-width:100%;height:auto;margin-inline:auto;}
input,button,textarea,select{font:inherit}
textarea:not([rows]){min-height:10em}:target{scroll-margin-block:5ex}
button{all:unset;display:revert}
table {border-collapse:collapse}
textarea {white-space:revert}

/*-------------------------------------------
config
-------------------------------------------*/
:root {
	/* color */
  --bg-color: #000;
  --border-color: #c2c2c2;

  /* parallax */
  --parallax-scale: 1;
  --parallax-translate: 0px;
  --hero-translate: 0px;
  --hero-opacity: 1;
  --scrolldown-opacity: 1;

  --white: #fff;
  --gray: #9F9F9F;
  //--lightGray: #F3F4F8;
  --lightGray: #DCDCDC;
  --sLightGray: #F7F7F7;
  --mediumGray: #9F9F9F;
  --darkGray: #363636;
  --black: #272727;
  --richBlack: #000;

  --sat: #5FCFFF;
  --sun: #FF4646;

  /* width */
  --maxWidth: 1440px;
  --contentsWidth: 1320px;
  --tabletBreak: 1024px;
  --columnBreak: 860px;
  --spBreak: 768px;
  --spWidth: 520px;
  --spDesignWidth: 393px;

  --maxWidthN: 1440;
  --contentsWidthN: 1320;
  --tabletBreakN: 1024;
  --spBreakN: 768;
  --spWidthN: 520;
  --spDesignWidthN: 393;

  --padding-pc: 60px;
  --padding-sp: 20px;
}

/*-------------------------------------------
font-family
-------------------------------------------*/
/*
font-family: "ryo-gothic-plusn", sans-serif;
font-weight: 400;
font-style: normal;

font-family: "ryo-gothic-plusn", sans-serif;
font-weight: 500;
font-style: normal;

font-family: "Inter", sans-serif;
font-weight: 400;

font-family: "Inter", sans-serif;
font-weight: 600;
*/

/*-------------------------------------------
base
-------------------------------------------*/
html {
	scroll-behavior: smooth;
}
html, body {
	overflow-x: hidden;
}

body {
	position: relative;
	text-align: center;
	color: var(--black);
	font-size: 14px;
	font-family: "ryo-gothic-plusn", sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 1.8;
	letter-spacing: 0.08em;
	font-feature-settings: "palt" 1;
	-webkit-text-size-adjust: 100%;
	//container-type: inline-size;
	background: url(../img/bg_food.webp) repeat center center / 100% auto;
	@media (max-width: 520px) {
		font-size: 15px;
	}
}

/*-------------------------------------------
common
-------------------------------------------*/
.head {
	font-family: "Inter", sans-serif;
	font-weight: 400;
	font-size: clamp(42px, calc((54 / var(--maxWidthN)) * 100vw), 54px);
	line-height: 1;
	letter-spacing: 0.015em;
}

.readText {
  text-align: left;
  font-size: 14px;
  font-weight: 500;
  width: calc((868 / var(--maxWidthN)) * 100vw);
  @media (max-width: 768px) {
    width: calc(100% - 30px);
  }
}

@keyframes fadeInSlide {
	0% {
		opacity: 0;
		left: 40px;
	}
	100% {
		opacity: 1;
		left: 0;
	}
}

.forSP {
	display: none;
	@media (max-width: 520px) {
		display: block;	
	}
}

/*-------------------------------------------
layout
-------------------------------------------*/
#wrapper {
	text-align: center;
}

#main {
  position: relative;
  max-width: var(--maxWidth);
  margin-inline: auto;
  @media (max-width: 1560px) {
    padding-inline: var(--padding-pc);
  }
  @media (max-width: 520px) {
    padding-inline: var(--padding-sp);
  }
  &::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/main01_pc.webp) no-repeat center center / cover;
    z-index: -1;
    transform-origin: center center;
    will-change: transform;
    transition: transform 0.1s ease-out;
    transform: scale(var(--parallax-scale));
    @media (max-width: 520px) {
        background: url(../img/main01_sp.webp) no-repeat center center / cover;
    }
  }
}

section {
	position: relative;
	overflow: hidden;
	background: var(--white);
	padding-top: 160px;
	padding-bottom: 160px;
	scroll-margin-top: 160px;
  padding-top: calc((160 / var(--maxWidthN)) * 100vw);
  padding-bottom: calc((160 / var(--maxWidthN)) * 100vw);
  scroll-margin-top: calc((160 / var(--maxWidthN)) * 100vw);
	margin-inline: calc(50% - 50vw);
	max-width: 100vw;
	padding-inline: calc(50vw - 50%);
	@media (max-width: 520px) {
		padding-top: 80px;
		padding-bottom: 80px;
		scroll-margin-top: 80px;
	}
}

#header {
  position: relative;
  background: var(--white);
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-inline: 20px;
  overflow: visible;
  gap: 20px;
  @media (max-width: 520px) {
    padding-left: 10px;
    padding-right: 10px;
    gap: 5px;
  }
  h1 {
    font-family: "Inter", sans-serif;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.015em;
    line-height: 1;
    white-space: nowrap;
    @media (max-width: 520px) {
      font-size: calc((20 / var(--spWidthN)) * 100vw);
      font-size: 12px;
    }
  }
  ul {
    display: flex;
    align-items: center;
    gap: 24px;
    @media (max-width: 520px) {
      gap: 0;
    }
    li {
      a {
        img {
          @media (max-width: 520px) {
            scale: 0.8;
          }
        }
      }
    }
  }
}

#footer {
	position: relative;
	padding: 64px 60px 24px;
	text-align: center;
	color: var(--white);
	background: var(--richBlack);
	z-index: 1;
	.footerLogo {
		a {
			img {
				@media (max-width: 520px) {
					width: 117px;
				}
			}
		}
	}
	.snsList {
		display: flex;
		justify-content: center;
		gap: 20px;
		@media (max-width: 520px) {
			gap: 30px;
		}
		li {
			a {
        img {
          scale: 0.8;
          transition: .3s;
          @media (max-width: 520px) {
            scale: 1.9;
          }
        }
				&:hover {
          img {
            scale: 1;
            @media (max-width: 520px) {
              scale: 2.5;
            }
          }
				}
			}
		}
	}
	.footerLogo {
		margin-top: 40px;
	}
	.copyright {
		margin-top: 32px;
		text-align: center;
		small {
			font-size: 10px;
			font-family: "Inter", sans-serif;
			font-weight: 500;
			letter-spacing: 0;
      margin-inline: -20px;
		}
	}
}

section#hero {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  background: none;
  width: 100vw;
  height: 100vh;
  height: 100svh;
  position: relative;
  @media (max-width: 520px) {
    align-items: flex-start;
  }
  .logo {
      position: relative;
      z-index: 1;
      margin-top: calc(((-127 / 2) / var(--maxWidthN)) * 100vw);
      //margin-top: 20vh;
      opacity: var(--hero-opacity);
      transform: translateY(var(--hero-translate));
      transition: transform 0.1s ease-out;
      @media (max-width: 520px) {
        //margin-top: calc(((-217 / 2) / var(--spDesignWidthN)) * 100vw);
        margin-top: 10vh;
      }
      img {
          width: calc((960 / var(--maxWidthN)) * 100vw);
          @media (max-width: 520px) {
              width: calc((265 / var(--spDesignWidthN)) * 100vw);
          }
      }
  }
  .scrolldown {
    position: fixed;
    bottom: 62px;
    left: 0;
    right: 0;
    margin: auto;
    height: 70px;
    z-index: 1;
    opacity: var(--scrolldown-opacity);
    transition: opacity 0.1s ease-out;
    i {
      position: absolute;
      display: inline-block;
      top: 0;
      left: 0;
      right: 0;
      margin: auto;
      color: var(--white);
      font-family: "Inter", sans-serif;
      font-weight: 300;
      font-size: 12px;
      letter-spacing: 0.1em;
      writing-mode: vertical-rl; 
      width: 1em;
      line-height: 1;
      &::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        margin: auto;
        width: 1px;
        height: 60px;
        background: var(--white);
        animation: pathMove 1.4s ease-in-out infinite;
        opacity: 0;
      }
    }
  }
}
/* アニメーション定義 */
@keyframes pathMove {
	0% {
		top: 55px;
		opacity: 0;
	}
	30% {
		opacity: 1;
	}
	100% {
		height: 0px;
		top: 115px;
		opacity: 1;
	}
}
  
section#concept {
  position: relative;
  color: var(--white);
  overflow: visible;
  background: none;
  padding-inline: clamp(50px, calc((113 / var(--maxWidthN)) * 100vw), 113px);;
  margin-top: 100vh;
  @media (max-width: 520px) {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .inner {
    &::before {
      position: absolute;
      content: "";
      z-index: 1;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.8);
    }
    &::after {
      position: absolute;
      content: "";
      z-index: 1;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.8);
      mix-blend-mode: hue;
    }
    > * {
      position: relative;
      z-index: 2;
    }
  }
  &::before {
    position: absolute;
    display: block;
    content: "";
    bottom: 100%;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgb(0,0,0);
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 20%, rgba(0,0,0,0.8) 100%);
    mix-blend-mode: hue;
    z-index: 2;
  }
  &::after {
    position: absolute;
    display: block;
    content: "";
    bottom: 100%;
    left: 0;
    width: 100%;
    height: 100vh;
    background: linear-gradient(180deg, rgba(0,0,0,0) 20%, rgba(0,0,0,0.5) 70%, rgba(0,0,0,0.8) 100%);
    z-index: 1;
  }
  .head {
    font-family: "Inter", sans-serif;
    font-weight: 400;
    font-size: clamp(42px, calc((54 / var(--maxWidthN)) * 100vw), 54px);
    margin-bottom: clamp(34px, calc((34 / var(--maxWidthN)) * 100vw), 34px);
    background: linear-gradient(-45deg, 
      var(--gray) 0%, 
      var(--gray) 50%, 
      var(--white) 50%, 
      var(--white) 100%);
    
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    background-size: 250vw 100%;
    background-position: var(--text-color-position, 102% 0%);
    transition: background-position 0.1s ease-out;
    
    @media (max-width: 520px) {
      margin-left: -30px;
    }
  }
  .textContainer {
    background: linear-gradient(-45deg, 
      var(--gray) 0%, 
      var(--gray) 50%, 
      var(--white) 50%, 
      var(--white) 100%);
    
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    background-size: 250vw 100%;
    background-position: var(--text-color-position, 102% 0%);
    transition: background-position 0.1s ease-out;
  }
  .text {
    text-align: left;
    //font-size: clamp(18px, calc((32 / var(--maxWidthN)) * 100vw), 32px);
    font-size: clamp(14px, calc((20 / var(--maxWidthN)) * 100vw), 20px);
    font-weight: 400;
    + .text {
      margin-top: clamp(18px, calc((32 / var(--maxWidthN)) * 100vw), 32px);
    }
  } 
  .side {
    position: absolute;
    //top: 168px;
    top: calc((168 / var(--maxWidthN)) * 100vw);
    left: clamp(20px, calc((32 / var(--maxWidthN)) * 100vw), 32px);;
    font-family: "Inter", sans-serif;
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.015em;
    line-height: 1;
    writing-mode: vertical-rl; 
    @media (max-width: 520px) {
      top: 130px;
      left: 20px;
    }
  }
}
@keyframes textColorMove {
  0% {
    background-position: 102% 0%;
  }
  100% {
    background-position: 0% 0%;
  }
}

section#image {
  background: var(--sLightGray);
  padding-top: 120px;
  padding-bottom: 120px;
  padding-top: calc((120 / var(--maxWidthN)) * 100vw);
  padding-bottom: calc((120 / var(--maxWidthN)) * 100vw);
  @media (max-width: 520px) {
    padding-top: 120px;
    padding-bottom: 120px;
  }
  .imageList {
    display: flex;
    justify-content: center;
    gap: 36px;
    @media (max-width: 520px) {
      flex-direction: column;
      gap: 64px;
    }
    > li {
      figure {
        overflow: hidden;
        img {
          
        }
        + p {
          margin-top: clamp(18px, calc((24 / var(--maxWidthN)) * 100vw), 24px);
          margin-top: 10px;
          text-align: left;
          font-size: 13px;
          font-weight: 300;
          transition: .9s;
          @media (max-width: 520px) {
            line-height: 1.6;
          }
        }
      }
      &:nth-child(odd) {
        @media (max-width: 520px) {
          margin-right: 30px;
        }
      }
      &:nth-child(even) {
        margin-top: clamp(0px, calc((80 / var(--maxWidthN)) * 100vw), 80px);
        @media (max-width: 520px) {
          margin-top: 0;
          margin-left: 30px;
        }
      }
      &.fadein {
        position: relative;
        transition: .9s;
        transition-delay: .2s;
        opacity: 0;
        figure {
          scale: 1.1;
          transition: .9s;
          transition-delay: .2s;
          img {
            filter: blur(5px);
            transition: .9s;
            transition-delay: .2s;
          }
        }
        &.visible {
          opacity: 1;
          figure {
            scale: 1;
            img {
              filter: blur(0px);
            }
          }
        }
        &:nth-child(2) {
          transition-delay: .5s;
          img {
            transition-delay: .5s;
          }
        }
      }
    }
  }
  .ex {
    position: absolute;
    font-size: 12px;
    bottom: 50px;
    width: 100%;
    max-width: var(--maxWidth);
    text-align: right;
    @media (max-width: 1560px) {
      right: var(--padding-pc);
      bottom: 30px;
    }
    @media (max-width: 768px) {
      bottom: 15px;
    }
    @media (max-width: 520px) {
      bottom: 25px;
      right: var(--padding-sp);
    }
  }
}
section#about {
  .sectionHead {
    display: flex;
    justify-content: space-between;
    gap: clamp(20px, calc((60 / var(--maxWidthN)) * 100vw), 60px);
    margin-bottom: clamp(50px, calc((64 / var(--maxWidthN)) * 100vw), 64px);
    @media (max-width: 768px) {
      flex-direction: column;
    }
    .head {
      white-space: nowrap;
    }
  }
  .aboutList {
    position: relative;
    display: flex;
    gap: clamp(65px, calc((150 / var(--maxWidthN)) * 100vw), 150px);
    z-index: 2;
    @media (max-width: 520px) {
      flex-direction: column;
    }
    > li {
      width: calc((100% - (calc((150 / var(--maxWidthN)) * 100vw) * 1)) / 2);
      @media (max-width: 520px) {
        width: 100%;
      }
      figure {
        position: relative;
        width: 100%;
        overflow: hidden;
        img {
          position: relative;
          z-index: 1;
          width: 100%;
        }
        figcaption {
          position: relative;
          z-index: 2;
          text-align: left;
          font-weight: 400;
          font-size: 13px;
          margin-top: 8px;
          
        }
        &::before {
          content: "";
          position: absolute;
          left: 0;
          width: 100%;
          height: 100%;
          background: var(--white);
          aspect-ratio: 3/2;
          z-index: 2;
        }
      }
      &:nth-child(1) figure {
        width: clamp(323px, calc((642 / var(--maxWidthN)) * 100vw), 642px);
        @media (max-width: 520px) {
          margin-left: 0;
        }
      }
      &:nth-child(2) figure {
        width: clamp(294px, calc((529 / var(--maxWidthN)) * 100vw), 529px);
        margin-top: clamp(0px, calc((260 / var(--maxWidthN)) * 100vw), 260px);
        @media (max-width: 520px) {
          margin-top: 0;
          margin-right: 0;
        }
      }
      &.fadein {
        position: relative;
        transition: .9s;
        transition-delay: .2s;
        opacity: 0;
        figure {  
          img {
            scale: 1.1;
            transition: .9s;
            transition-delay: .3s;
          }
          &::before {
            top: 0;
            transition: .9s;
            transition-delay: .3s;
          }
        }
        &.visible {
          opacity: 1;
          figure {
            img {
              scale: 1;
            }
            &::before {
              top: 100%;
            }
          } 
        }
        &:nth-child(even) {
          transition-delay: .8s;
          figure {
            img {
              transition-delay: .8s;
            }
            &::before {
              transition-delay: .8s;
            }
          }
        }
      }
    }
    + .scrolltext + .aboutList {
      > li {
        &:nth-child(1) figure {
          width: clamp(323px, calc((642 / var(--maxWidthN)) * 100vw), 642px);
          @media (max-width: 520px) {
            margin-left: 0;
          }
        }
        &:nth-child(2) figure {
          width: clamp(294px, calc((529 / var(--maxWidthN)) * 100vw), 529px);
          margin-top: clamp(0px, calc((140 / var(--maxWidthN)) * 100vw), 140px);
          @media (max-width: 520px) {
            margin-top: 0;
            margin-right: 0;
          }
        }
      }
    }
  }
  .scrolltext {
    position: relative;
    overflow: hidden;
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    display: flex;
    gap: clamp(20px, calc((40 / var(--maxWidthN)) * 100vw), 40px);
    white-space: nowrap;
    margin-top: clamp(18px, calc((50 / var(--maxWidthN)) * 100vw), 50px);
    margin-bottom: clamp(-45px, calc((-80 / var(--maxWidthN)) * 100vw), -80px);;
    z-index: 1;
    li {
      list-style: none;
      font-family: "Inter", sans-serif;
      font-size: clamp(140px, calc((200 / var(--maxWidthN)) * 100vw), 200px);
      font-weight: 600;
      color: var(--lightGray);
      line-height: 1;
      &:nth-child(odd) {
        animation: MoveLeft 36s -18s infinite linear;
      }
      &:nth-child(even) {
        animation: MoveLeft2 36s infinite linear;
      }
    }
  }
}

@keyframes MoveLeft {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-103%);
  }
}

@keyframes MoveLeft2 {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-206%);
  }
}

section#news {
  background: var(--sLightGray);
  .sectionHead {
    display: flex;
    justify-content: space-between;
    gap: clamp(20px, calc((60 / var(--maxWidthN)) * 100vw), 60px);
    margin-bottom: clamp(50px, calc((82 / var(--maxWidthN)) * 100vw), 82px);
    @media (max-width: 768px) {
      flex-direction: column;
    }
    .head {
      white-space: nowrap;
    }
  }
  .newsList {
		display: flex;
    @media (max-width: 768px) {
      gap: 20px;
    }
    @media (max-width: 520px) {
      gap: 40px 24px;
      flex-wrap: wrap; 
    }
		> li {
			position: relative;
      width: 416px;
      width: clamp(0px, calc((416 / var(--maxWidthN)) * 100vw), 416px);
      @media (max-width: 520px) {
        width: calc((100% - (24px * 1)) / 2);
      }
			> a {
        position: relative;
				text-decoration: none;
				&.disabled {
					pointer-events: none;
					cursor: default;
					.arrow.more {
						display: none;
					}
				}
			}
			figure {
				position: relative;
				margin: 0;
				z-index: 1;
				min-width: 416px;
        min-width: clamp(0px, calc((416 / var(--maxWidthN)) * 100vw), 416px);
				aspect-ratio: 1 / 1;
				overflow: hidden;
        border-radius: 8px;
        transition: .3s;
				@media (max-width: 520px) {
					min-width: 264px;
          min-width: clamp(0px, calc((264 / var(--maxWidthN)) * 100vw), 264px);
				}
				img {	
					min-width: 416px;
          min-width: clamp(0px, calc((416 / var(--maxWidthN)) * 100vw), 416px);
          transition: .3s;
					@media (max-width: 520px) {
						min-width: 264px;
          min-width: clamp(0px, calc((264 / var(--maxWidthN)) * 100vw), 264px);
					}
				}
			}
      h3 {
        font-size: 13px;
        font-weight: 500;
        margin-top: 48px;
        transition: .3s;
        @media (max-width: 520px) {
          margin-top: 24px;
        } 
      }
			p {
        margin-top: 13px;
        font-weight: 400;
        text-align: left;
        @media (max-width: 520px) {
          font-size: 13px;
          margin-top: 5px;
        }
        &.more {
          text-align: right;
          font-family: "Inter", sans-serif;
          font-size: 13px;
          font-weight: 400;
          margin-top: 40px;
          letter-spacing: 0;
          transition: .3s;
          @media (max-width: 520px) {
            margin-top: 14px;
          }
          span {
            position: relative;
            display: inline-block;
            overflow: hidden;
            line-height: 1;
            padding-bottom: 8px;
            &::before {
              content: "";
              position: absolute;
              bottom: 0;
              left: -108%;
              width: 208%;
              height: 1px;
              background: var(--black);
              background: linear-gradient(-90deg, var(--richBlack) 0%, var(--richBlack) 48%, var(--white) 48%, var(--white) 52%, var(--gray) 52%, var(--gray) 100%);
              transition: .3s;
            }
          }
        }
      }
      > a:hover {
        figure {
          margin-top: -18px;
          @media (max-width: 520px) {
            margin-top: -10px;
          }
          img {
            scale: 1.1;
            filter: grayscale(1);
          }
        }
        h3 {
          margin-top: 66px;
          @media (max-width: 520px) {
            margin-top: 34px;
          }
        }
        p.more {
          opacity: .7;
          span {
            opacity: 1;
            &::before {
              left: 0;
            }
          }
        }
      }
    }
    &.fadein {
      top: 0;
      left: 50px;
      opacity: 0;
      transition: 1s;
      @media (max-width: 520px) {
        left: 0;
        top: 40px;
        left: auto;
      }
      &.initial-load {
        transition-delay: .5s;  
      }
      &.visible {
        left: 0;
        opacity: 1;
        @media (max-width: 520px) {
          top: 0;
			    left: auto;
        }
        li {
          position: relative;
          opacity: 0;
          left: 40px;
          &.initial-load {
            &:nth-child(1) {animation: fadeInSlide 0.6s ease 0.2s both;}
            &:nth-child(2) {animation: fadeInSlide 0.6s ease 0.3s both;}
            &:nth-child(3) {animation: fadeInSlide 0.6s ease 0.4s both;}
            &:nth-child(4) {animation: fadeInSlide 0.6s ease 0.5s both;}
          }
          &:not(.initial-load) {
            opacity: 1;
            left: 0;
          }
        }
      }
    }
	}
	#newsSlider {
		overflow: visible;
		.swiper-slide {
			width: 416px;
      width: clamp(0px, calc((416 / var(--maxWidthN)) * 100vw), 416px);
			@media (max-width: 520px) {
        min-width: 0;
        width: calc((100% - (24px * 1)) / 2);
      }
		}
		.c-swiper-control {
			padding: 64px 0 0;
      @media (max-width: 520px) {
        display: none;
      }
		}
		.c-swiper-button {
			position: relative;
			width: 136px;
			height: 48px;
      display: flex;
      justify-content: center;
      align-items: center;
			@media (max-width: 520px) {
				width: 169px;
			}
      i {
        position: absolute;
        display: block;
        content: "";
        width: 24px;
        height: 1px;
        background: var(--mediumGray);
        transform-origin: center;
        transform: rotate(110deg);
      }
		}
    .swiper-button-prev,
		.swiper-button-next {
			position: absolute;
			top: auto;
			margin: 0;
			width: 48px;
			height: 48px;
			border: 1px solid var(--mediumGray);
			border-radius: 50%;
			transition: .3s;
      transform-origin: center;
			&::after {
				content: "";
				width: 9px;
				height: 9px;
				border-top: 1px solid var(--black);
				border-right: 1px solid var(--black);
				transform-origin: center;
				display: block;
				position: absolute;
				margin: auto;
				top: 0;
				bottom: 0;
			}
      &::before {
				content: "";
				width: 12px;
				height: 1px;
				background: var(--black);
				transform-origin: center;
				display: block;
				position: absolute;
				margin: auto;
				top: 0;
				bottom: 0;
			}
			&:hover {
				background: var(--lightGray);
        border-color: var(--lightGray);
        width: 40px;
			  height: 40px;
				&::after {
					border-color: var(--white);
				}
        &::before {
          background: var(--white);
        }
			}
		}
		.swiper-button-prev {
			left: 0;
			&::after {
				margin-left: -3px;
				transform: rotate(-135deg);
			}
      &:hover {
        margin-left: 4px;
      }
		}
		.swiper-button-next {
			right: 0;
			&::after {
				margin-right: -3px;
				transform: rotate(45deg);
			}
      &:hover {
        margin-right: 4px;
      }
		}
	}
}